收藏
回答

微信小程序返回值中的cookie作用

问题模块
教程反馈

        过完年前就发现返回值中出现了一个cookies,但是具体作用是干啥的不清楚,过完年之后,公司要求处理用户登录密码加密问题,要用到cookie,就自己好好恶补了一顿。官方文档对cookie的作用寥寥无几啊,难不成和web用法一模一样?

        首先说明,cookie是用来在客户端浏览器上缓存数据的,很多人都说安全性不高。想了想,先前觉得要cookie没啥用,现在cookie太重要了。

       在微信小程序中,用户每发送一次wx.request()请求之后,对于服务器来说就是新的会话,就相当于打开新的浏览器,对应的cookie会发生变化,也就造成用户未登录状态,要是一直保持用户登录状态,考虑到发送重定向请求,然而没有。

        要想保持用户登录状态,请参阅:保持用户登录状态。废话不多说,上代码:

  1. 发送请求

    var data={};
    wx.request({
      url: 'https://xxxxx.xxx.xxxx/xxxx/xxx',
      data: data,
      dataType: "json",
      method: 'GET',
      success: function (res) {
        console.log(res)
      },
      fail: function (res) {
        console.log(res)
      }
    })
  2. 获取json数据结果如下


  3. 设置header值

    var header = {
      'Accept': 'application/json',
      'content-type': 'application/json',
      'Authorization': null,
      'Cookie':"JSESSIONID=" + res.cookies[0].value
    }
  4. 再次发送请求

    var data={};
    wx.request({
      url: 'https://xxxxx.xxx.xxxx/xxxx/xxx',
      data: data,
      dataType: "json",
      header:header,
      method: 'GET',
      success: function (res) {
        console.log(res)
      },
      fail: function (res) {
        console.log(res)
      }
    })

    再次发送请求的时候就可以保持用户登录状态了,相当于在同一个浏览器上操作。

抛砖引玉:不知道我说的是否正确呢?我是新菜,希望路过的朋友能指点一二,欢迎评论探讨更多cookie的作用(*^▽^*)!

最后一次编辑于  02-20  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答