zoukankan      html  css  js  c++  java
  • 微信小程序如何在使用wx.request使用cookie

    我主要是做asp.net mvc后端开发的,经常使用Jquery的ajax与后台的Web API进行数据交互。

    最近公司要做一个小程序,要实现小程序与Web前端的通信,当然小程序是可以实现socket通信的,那样的话,我需要给小程序写socket接口,给web写restful的接口,很显然我不乐意这么干。

    我的各个交互都是需要知道用户状态的,web端使用cookie来保存用户的sessionid,而小程序的wx.request显然没有这个功能。

    了解ajax机制的话,我们可以知道,ajax请求每次都会把cookie带上的,而后端正式通过cookie里面的sessionid这个cookie来识别用户的,那么微信小程序里面是不是也可以这么实现呢?

    答案当然是可以的,ajax的cookie是通过请求的header带上去的,同理,我们可以在请求之前把这个ID塞进header,直接上代码:

    //对wx.request实现二次封装
    function(args) {
        var that = this;
        var header = {
          'content-type': 'application/json; charset=utf-8',
          'cookie': wx.getStorageSync("sessionid")
        };
        reqObj=wx.request({
          url: that.baseUrl + args.url,
          method: "POST",
          header: header,
          data: JSON.stringify(args.data),
          success(res) {
            var cookie = res.header["Set-Cookie"];
            if (cookie != null) {
              wx.setStorageSync("sessionid", res.header["Set-Cookie"]);
            }
            if (args.success) args.success(res);
          },
          complete(res) {
            if (args.complete) args.complete(res);
          }
        })
      }
    

    大功告成。

  • 相关阅读:
    团队第二阶段冲刺——第三天
    团队第二阶段冲刺——第二天
    团队第二阶段冲刺——第一天
    第一阶段意见汇总
    团队第一次绩效考核
    我们与同类产品的差距
    团队项目第一阶段成果评价
    第一阶段验收成果总结
    团队冲刺第十天
    团队冲刺第九天
  • 原文地址:https://www.cnblogs.com/jerryqi/p/9717925.html
Copyright © 2011-2022 走看看