微信小程序怎么获取接口返回的cookie

2025-10-20 02:31:25

1、获取cookie,在登录请求后读取 返回值的, header的cookie,并本地存储。//登录请求回来之后,读取res的header的cookie

//这里的sessionid随便写的,就是个唯一标识

 wx.setStorageSync("sessionid", res.header["Set-Cookie"])

微信小程序怎么获取接口返回的cookie

2、请求带上cookie: //创建header 

  var header;

  header = { 

     'content-type': 'application/x-www-form-urlencoded', 

     'cookie':wx.getStorageSync("sessionid")//读取cookie

  };

  //进行请求,一般外层都有一个封装,然后放在公共类里边

  wx.request({

    url: realURL,

    method: method,

    header: header,//传在请求的header里

    data: datas,

    success(res) {

    //请求成功的处理

    }

  )}

微信小程序怎么获取接口返回的cookie

3、接下来需要将sessinid在本地管理的方法

var sessionkey;

var sessiondate;

//可以封装一个保存sessinid的方法,将sessionid存储在localstorage中,定为半小时之后清空此sessionid缓存。

function saveSession(sessionId) {

   console.log(" now save sessionid: " + sessionId)

   wx.setStorageSync(“sessionkey” sessionId)//保存sessionid

   wx.setStorageSync(“sessiondate”, Date.parse(new Date()))//保存当前时间,

}

微信小程序怎么获取接口返回的cookie

4、// 过期后清除session缓存

function removeLocalSession() {

  wx.removeStorageSync(“sessionid的key”)

  wx.removeStorageSync(sessiondate)

  console.log("remove session!")

}

 

微信小程序怎么获取接口返回的cookie

5、/检查sessionid是否过期的方法

function checkSessionTimeout() {

  var sessionid = wx.getStorageSync(sessionkey)

  if (sessionid == null || sessionid == undefined || sessionid == "") {

    console.log("session is empty")

    return false

  }

  var sessionTime = wx.getStorageSync(sessiondate)

  var aftertimestamp = Date.parse(new Date())

  if (aftertimestamp - sessionTime >= SESSION_TIMEOUT) {

    removeLocalSession()

    return false      

  }

  return true

微信小程序怎么获取接口返回的cookie

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢