您的位置:首页 > 编程语言 > PHP开发

服务端PHP设置cookie,客户端未生效

2016-03-24 22:48 295 查看
今天碰到一个很蛋疼的问题,有个项目PHP开发接口给客户端内嵌的网页做应用,测试拿了6台iPhone来测试,5台设备测试都没问题,就1台9.1版本的iPhone6s一直不行,很奇怪,找不到原因。

然后,用fiddler抓包发现这台设备在应该生成cookie的接口请求后并没有生成cookie,所以往后需要用到cookie的接口也走不下去了。由于是网页内嵌在客户端里的,于是去设置里查看safari是否启用了cookie,check后发现cookie也是启用的。

这实在是太奇怪了!还能有什么原因?瞟了一眼设备的时间,不对啊,和当前时间不一样,快了半小时(当时没注意日期,应该快了至少一天,因为服务端设置的cookie过期时间为1天)。把日期调为当前正确时间后,cookie就能生成了。

后来,试验重现了一下这个问题,当cookie设置过期时间为1天,假设当前设置cookie时间为2016年03月24日22点整(服务器时间),而客户端时间为2016年03月25日22点整,那么设置cookie是不会成功的,因为刚设置cookie就立马失效了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息