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
转载请注明出处,谢谢!
今天在使用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
转载请注明出处,谢谢!
相关文章推荐
- android ViewSwticher
- LaunchImage
- php---mysql+ajax 表格(table)分页实现
- iOS UI基础-6.0 UIActionSheet的使用
- c#获取当前日期时间
- 样本有偏时的思考
- Spring MVC textarea example
- htm和html
- 内存池、进程池、线程池
- [LeetCode-203] Remove Linked List Elements(链表节点删除)
- IOS IPA打包和真机测试
- IOS 更新版本后出现错误:could not find a storyboard named 'Main' in bundle NSBundle
- 检查对象属性是否有空值
- 浅谈JAVA集合框架
- hdu 5438 Ponds 2015长春网络赛 图论 dfs bfs
- 如何安装nginx第三方模块--add-module
- 一些有用的linux命令
- STL源码剖析 [简单应用总结二]
- WinForm中AssemblyInfo.cs文件参数具体讲解
- hydra 密码破解工具详解