我正在编写REST客户端(使用AFNetworking),并且需要能够在应用程序的单个实例中触发创建新会话.换句话说,我想:
1 – 使用服务器进行身份验证
2 – 做一些REST调用
3 – 模拟“退出”
4 – 使用服务器重新进行身份验证
5 – 再做一些REST调用
AFNetworking非常适合进行初始身份验证和REST调用,但我无法弄清楚如何清除会话并在同一实例中“重置”连接.
当我使用ASIHTTP时,我只是做了:
[ASIHTTPRequest clearSession];
有没有办法与AFNetworking做类似的事情?
1 – 使用服务器进行身份验证
2 – 做一些REST调用
3 – 模拟“退出”
4 – 使用服务器重新进行身份验证
5 – 再做一些REST调用
AFNetworking非常适合进行初始身份验证和REST调用,但我无法弄清楚如何清除会话并在同一实例中“重置”连接.
当我使用ASIHTTP时,我只是做了:
[ASIHTTPRequest clearSession];
有没有办法与AFNetworking做类似的事情?
解决方法
使用AFHTTPClient(请参阅示例项目中的API客户端).
可以使用-setAuthorizationHeaderWithUsername:password:设置凭据.从该HTTP客户端创建的每个请求都将具有Authorization HTTP标头,类似于浏览器会话.
当用户注销,或者您想要清除凭据时,请执行-clearAuthorizationHeader.