您的位置:首页 > 其它

AFNetworking读取和设置cookie的解决方案

2015-09-14 10:55 405 查看
转: /article/1607006.html

今天在使用AFNetworking的时候需要使用cookie,查了一些资料后,了解了AFNetworking使用cookie的方法,在这里分享给大家。
实际上AFNetworking中并没有专门针对cookie封装的代码,但是由于它底层使用的是NSURLRequest,所以可以通过NSHTTPCookieStorage来操作cookie,读取和保存cookie的代码如下:

[objc] view
plaincopy





NSArray *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL: [NSURL URLWithString:kServerAddress]];

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:cookies];

[[NSUserDefaults standardUserDefaults] setObject:data forKey:kUserDefaultsCookie];

设置cookie的代码如下:

[objc] view
plaincopy





NSData *cookiesdata = [[NSUserDefaults standardUserDefaults] objectForKey:kUserDefaultsCookie];

if([cookiesdata length]) {

NSArray *cookies = [NSKeyedUnarchiver unarchiveObjectWithData:cookiesdata];

NSHTTPCookie *cookie;

for (cookie in cookies) {

[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];

}

}

注意如下两点:
1. 通过以上方法保存cookie,即可实现在退出程序,下一次进入的时候不用登录而再次使用cookie
2. 通过以上方法设置的cookie,通过webview的loadRequest方法load NSURLRequest时可以共用cookie。

如果大家觉得对自己有帮助的话,还希望能帮顶一下,谢谢:)

个人博客:http://blog.csdn.net/zhaoxy2850
本文地址:/article/1607006.html
转载请注明出处,谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: