javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > 微信小程序sessionid不一致

微信小程序sessionid不一致问题解决

作者:婧星

这篇文章主要介绍了微信小程序sessionid不一致问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

问题

由于小程序端两次请求的 sessionid 不一致, 导致后端无法取得 session

解决办法

在登录时获取sessionid

//第一次请求登录接口时保存到sessionid中
success: function (res) {
     wx.hideLoading();
     wx.removeStorageSync('sessionid');//每次登录时清楚缓存
     if (res.data.code == "0000") {
      if (res.data.data.roleList[0].value =='student'){
       wx.showToast({
        title: '登录成功',
        icon: 'success',
        duration: 1000
       })
       wx.setStorageSync('sessionid', res.header['Set-Cookie']); //保存Cookie到Storage
        
      }
     } else {
      wx.showToast({
       title: '登录失败',
       icon: 'none',
       duration: 2000
      })
     }
    },

在后面进行页面的请求时,在请求头header里加上你存储的这个Set-Cookie的值

wx.request({   url: 'https://xxxx/examResult/selectWxListStudentStudyStatistic',
   method: 'post',
   header: {
    'content-type': 'application/x-www-form-urlencoded',//解决请求不到数据
    'cookie': wx.getStorageSync("sessionid")//读取sessionid,当作cookie传入后台将PHPSESSID做session_id使用
   },
   success: function (res) {
     wx.hideLoading();//去掉loading
   },
   fail: function (e) {
    wx.showToast({
     title: '服务器出现错误',
     icon: 'none',
     duration: 2000
    })
   }
  })

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文