作者:书友48058773 | 来源:互联网 | 2017-05-13 02:18
今天碰到一个很蛋疼的问题,有个项目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就立马失效了。
以上就介绍了服务端PHP设置COOKIE,客户端未生效,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。