释放双眼,带上耳机,听听看~!

前两天我在做uiwebview通过cookies自动登录的时候,发现app退出后cookies丢失,搞了一天找不出原因,最后发现ios的cookies需要程序员手动设置保存时间,默认下,cookies的保存时间是app退出后cookie就会被清掉!

怎么保存呢?简单得让人哭笑不得!在app进入后台的时候指向下面代码(不喜欢在delegate中执行,那就通过接受进入后台的通知):

NSHTTPCookie *cookie;

NSHTTPCookieStorage *nCookies = [NSHTTPCookieStorage sharedHTTPCookieStorage];

NSArray *cookiesURL = [nCookies cookiesForURL:[NSURL URLWithString:youURL]];  //这个是主页的url,不是登录页的url

for (id c in cookiesURL)

{

if ([c isKindOfClass:[NSHTTPCookie class]])

{

cookie=(NSHTTPCookie *)c;

if ([cookie.name isEqualToString:@"PHPSESSID"]) {//我的cookies的名字是

"PHPSESSID",你在上一行打个断点看看你的cookies的name是什么

NSDate *expiresDate = [NSDate dateWithTimeIntervalSinceNow:3600*24*30*12];//当前点后,保存一年左右

NSArray *cookies = [NSArray arrayWithObjects:cookie.name, cookie.value, expiresDate, cookie.domain, cookie.path, nil];

if(cookies){

NSMutableDictionary *cookieProperties = [NSMutableDictionary dictionary];

[cookieProperties setObject:[cookies objectAtIndex:0] forKey:NSHTTPCookieName];

[cookieProperties setObject:[cookies objectAtIndex:1] forKey:NSHTTPCookieValue];

[cookieProperties setObject:[cookies objectAtIndex:2] forKey:NSHTTPCookieExpires];

[cookieProperties setObject:[cookies objectAtIndex:3] forKey:NSHTTPCookieDomain];

[cookieProperties setObject:[cookies objectAtIndex:4] forKey:NSHTTPCookiePath];

NSHTTPCookie *cookieuser = [NSHTTPCookie cookieWithProperties:cookieProperties];

[[NSHTTPCookieStorage sharedHTTPCookieStorage]  setCookie:cookieuser];

}

break;

}

}

}

也就是说,每次退出都会讲保存时间更新为一年,所以不用担心cookies过期问题!

陆陆续续有人加qq提问,基本上都是这个问题:基本都是在[webView loadRequest:登录url],这是错的,应该load主页的url,没用保存cookies的话会自动转跳到登录url的,如果load的是登录url,那设置了cookie也没用!!!

php ios cookie 被阻,ios app退出后cookies丢失的解决方法相关推荐

  1. android闪退黑屏,艾诺迪亚4闪退黑屏原因及解决方法

    艾诺迪亚4闪退黑屏原因及解决方法,玩家们在游戏中有的时候会突然闪退或者黑屏,这些基本上都是一下几点原因造成,在下面的艾诺迪亚4闪退中就为玩家们详细地介绍了在游戏过程中突然闪退或者黑屏的原因,以及主要的 ...

  2. Mac使用技巧/M1 Mac安装 PS 2021 闪退、卡启动界面解决方法

    2021版Photoshop版M1可以使用了,具体怎么安装呢?本文将介绍m1 Mac安装ps2021的方法.如果安装过错出现问题,本文将介绍M1 Mac安装 PS 2021 闪退.卡启动界面解决方法. ...

  3. 梦想世界3手游服务器维护,梦想世界手游进不去 闪退及登录不上解决方法

    梦想世界手游进不去,梦想世界手游无法连接服务器,梦想世界手游登陆失败,梦想世界手游进去就死机,更新失败,或更新之后进不去了,梦想世界手游闪退是怎么回事,黑屏怎么回事,闪退怎么办,连接不上,梦想世界手游 ...

  4. M1 Mac安装 PS 2021 闪退、卡启动界面解决方法

    2021版Photoshop版M1可以使用了,具体怎么安装呢,本文将介绍m1 Mac安装ps2021的方法.如果安装过错出现问题,本文将介绍M1 Mac安装 PS 2021 闪退.卡启动界面解决方法. ...

  5. uno显示服务器断开,网易UNO闪退黑屏怎么办_网易UNO闪退黑屏原因及解决方法_游戏吧...

    网易UNO是一款非常有趣的棋牌类游戏,很多玩家在玩这款游戏的时候发生了闪退黑屏的情况,下面游戏吧小编为大家带来网易UNO闪退黑屏原因及解决方法,感兴趣的玩家快来了解一下吧! 黑屏闪退原因 1.硬件 硬 ...

  6. 火柴人联盟2服务器维护,火柴人联盟2闪退黑屏原因及解决方法汇总

    火柴人联盟2很多玩家已经接触过了,那么游戏闪退黑屏怎么办呢?有不少玩家都遇到了,下面为大家介绍的是游戏闪退黑屏的原因及解决方法,一起来看看吧. 火柴人联盟2闪退黑屏怎么办? 闪退黑屏原因 1.有可能是 ...

  7. 支持M1芯片的Photoshop 2021(ps2021)mac版闪退、卡启动界面解决方法

    macw站的2021版Photoshop版M1可以使用了,具体怎么安装呢,本文将介绍m1 Mac安装ps2021的方法.如果安装过错出现问题,本文将介绍M1 Mac安装 PS 2021 闪退.卡启动界 ...

  8. VMware安装Win2000安装程序闪退重启等问题的解决方法

    VMware安装Win2000安装程序闪退重启等问题的解决方法 [症状] 1.VMware 16.2.1以上版本,Win2000安装时,安装程序在安装Distributed Transaction C ...

  9. 关于spyder闪退打不开的解决方法

    关于spyder闪退打不开的解决方法 1.卸载pyzmq,执行:pip uninstall pyzmq (出现y/n的时候,输入y 然后回车就行了) 2.更新conda到最新版本:conda upda ...

最新文章

  1. PHP用oop写网站,收藏一个php的OOP开发使用小记
  2. 阿里云服务器(Ubuntu16.04 64位)远程连接
  3. WSS页面定制系列(2)---定制单个列表的表单页面
  4. Jquery有哪些选择器
  5. 深度学习String、StringBuffer、StringBuilder
  6. Rust布道者张汉东倾授,入门Rust初学者都要攻破哪些难点?
  7. 微信小程序项目实战之豆瓣天气
  8. jffs2reset 实现分析
  9. linux 网络内核 ko文件,编译内核模块 .ko文件缺少:mmzone.h bounds.h
  10. Python3 OpenCV
  11. win7 64位下 memcached安装
  12. 如何使用fiddler抓取APP接口
  13. 《计算机网络(第七版)谢希仁 编著》部分课后答案
  14. python 人民币兑美元汇率_人民币汇率转换(python人民币和美元转换)
  15. win无线网卡怎么进入监听模式_win10系统卸载网卡驱动的操作方法
  16. Python爬虫+颜值打分,5000+图片找到你的Mrs. Right
  17. 【Java学习002】Java-ArrayList源码解析
  18. css html 编写凌形图案
  19. 福昕高级PDF编辑器Foxit PhantomPDF Business v9.3.0.10826企业版+破解补丁
  20. __construct 与 __destruct 区别

热门文章

  1. 关于磁链与电感的理解
  2. 用HTML实现邮箱的注册页面
  3. 使用Packet Tracer简单配置路由器
  4. 《python简单爬取流浪地球影评 | CSDN创作打卡》
  5. 全栈开发工程师面试题六-Ribbon
  6. PHP 大流量高并发解决方案
  7. Mac在终端直接使用root权限
  8. miix4 装linux,联想miix4笔记本u盘安装win7系统步骤
  9. 京东必考JVM 问题诊断快速入门
  10. vue开发的微信服务号H5内嵌的腾讯地图和导航