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(); }