小程序
小游戏
企业微信
微信支付
扫描小程序码分享
我把一个数据存到了后台的session,并返回sessionkey给小程序,等回头小程序拿那个sessionkey请求后台时,后台的getAttribute是空的,连request.getSession都是空的,我在浏览器上没问题。
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
这个问题确实存在:小程序没有会话保持机制。同一个客户端每次发起请求,服务端都会重新生成一个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对象是否还活着。。。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
那wx.login的3rd_session怎么实现
小程序不支持 cookie,没有通常意义上的 session 的概念。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
这个问题确实存在:小程序没有会话保持机制。同一个客户端每次发起请求,服务端都会重新生成一个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对象是否还活着。。。
那wx.login的3rd_session怎么实现
小程序不支持 cookie,没有通常意义上的 session 的概念。