一、首先找到第一次發起網絡請求的地址,將服務器返回set-cookie當全局變量存儲起來
wx.request({ ...... success: function(res) { console.log(res.header); //set-cookie:PHPSESSID=ic4vj84aaavqgb800k82etisu0; path=/; domain=.fengkui.net // 登錄成功,獲取第一次的sessionid,存儲起來 // 注意:Set-Cookie(開發者工具中調試全部小寫)(遠程調試和線上首字母大寫) wx.setStorageSync("sessionid", res.header["Set-Cookie"]); }})
二、請求時帶上將sessionid放入request的header頭中傳到服務器,服務器端可直接在cookie中獲取
wx.request({ ...... header: { 'content-type': 'application/json', // 默認值 'cookie': wx.getStorageSync("sessionid") //讀取sessionid,當作cookie傳入后臺將PHPSESSID做session_id使用 }, success: function(res) { console.log(res) }})
三、后臺獲取cookie中的PHPSESSID,將PHPSESSID當作session_id使用
<?php// 判斷$_COOKIE['PHPSESSID']是否存在,存在則作session_id使用if ($_COOKIE['PHPSESSID']) { session_id($_COOKIE['PHPSESSID']);}session_start();
echo session_id();
總結
以上所述是小編給大家介紹的解決小程序無法觸發SESSION問題,希望對大家有所幫助!
新聞熱點
疑難解答