1.继上一篇随笔,连接点我,解决手机端cookie的问题。html
2.上次用cookie+redis实现了session,而且手机浏览器可能回传cookies有问题,因此最后用js取出cookie跟在请求的url后面。redis
3.可是今天发现了新的问题,js取cookie存的sessionId为空,状况以下:json
(1)QQ浏览器能获取某些cookie,另外一些cookie获取为空,猜想是后台Response SetCookie的时候,手机端浏览器没能良好的接受。浏览器
(2)UC浏览器测试正常。cookie
(3)Safari状况和QQ浏览器相同。session
(4)PC端正常。测试
4.这样的状况下,我最终肯定问题是, 后台对手机浏览器setCookie时出现问题。url
5.解决办法是,将须要存在cookie中的值放到json返回结果中一并返回。spa
6.在js中使用setCookie的方法来向浏览器设置cookie.code
7.SetCookie方法以下。
function setCookie(name,value) { var Days = 30; var exp = new Date(); exp.setTime(exp.getTime() + Days*24*60*60*1000); document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); }