关于小程序:彻底解决小程序无法触发SESSION问题

本文转自SDK社区:https://www.sdk.cn/details/lE5wmb52qR058DgojN
一、首先找到第一次发动网络申请的地址,将服务器返回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();
![image](/img/bVcPsMe)

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理