https请求session问题

发布于 7 年前作者 yli17039 次浏览最后编辑 7 年前来自 ask

每次用wx.request请求时怎么样才能保持sessionid 不变呢??

2 回复
chaoyin
chaoyin1 楼6 年前

这个问题确实存在:小程序没有会话保持机制。同一个客户端每次发起请求,服务端都会重新生成一个session对象,暂时有个解决办法就是在请求头加上sessionId。

wx.request({

url: config.base_url + ‘xcx/wysq/checkSession.do’,

method: ‘GET’,

header: { ‘content-type’: ‘application/x-www-form-urlencoded’, ‘Cookie’: ‘JSESSIONID=’ + sessionId },

success: function (result) {…}

我这个是Java的,php可能会有点区别。这样确实能获取上次的session对象,但关键是这个sessionId是放在客户端缓存中的,如果服务重启或者用户清空了缓存,就必须重新生成一个session对象。

所以每次进入页面onShow()里都要去服务端验证下session对象是否还活着。。。

xiafu
xiafu2 楼5 年前

我也遇到了这个问题,你现在解决了吗?