Fecshop微信小程序,api header 参数大小写的问题,导致ios和安卓获取方式不一样的问题解决

微信小程序 · Fecmall · 于 4年前 发布 · 2329 次阅读

fecshop的登陆,在安卓中好用, 在ios中不好用,进行了代码debug,发现,是header的参数名称大小写的问题

1.fecshop返回的header参数,是: fecshop-uuid, access-token

但是安卓机,从api response header中取值,必须是 Fecshop-Uuid, Access-Token

但是ios从api response header中取值,必须是 fecshop-uuid, access-token

这个导致了接收的参数无法获取到

进入加入了如下的条件判断:

	var fecshop_data = {};
    var request_header = request.header;
    var header_fecshop_uuid = request_header['Fecshop-Uuid'];
    if (!header_fecshop_uuid) {
      header_fecshop_uuid = request_header['fecshop-uuid'];
    }
    var header_access_token = request_header['Access-Token'];
    if (!header_access_token) {
      header_access_token = request_header['access-token'];
    }
共收到 2 条回复
Fecmall#14年前 0 个赞

也就是将app.js的saveReponseHeader方法改成如下即可:

saveReponseHeader: function (request){

    var fecshop_uuid = wx.getStorageSync('fecshop-uuid');
    var fecshop_access_token = wx.getStorageSync('access-token');

    var fecshop_data = {};
    var request_header = request.header;
    var header_fecshop_uuid = request_header['Fecshop-Uuid'];
    if (!header_fecshop_uuid) {
      header_fecshop_uuid = request_header['fecshop-uuid'];
    }
    var header_access_token = request_header['Access-Token'];
    if (!header_access_token) {
      header_access_token = request_header['access-token'];
    }
    if (header_fecshop_uuid && (header_fecshop_uuid != fecshop_uuid)) {
      wx.setStorageSync('fecshop-uuid', header_fecshop_uuid);
    }
    if (header_access_token && (header_access_token != fecshop_access_token)) {
      wx.setStorageSync('access-token', header_access_token);
    }
    
  },
添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
Your Site Analytics