封装请求时要获取token,怎么在拿到token后才做请求?
发布于 7 年前 作者 min89 7450 次浏览 来自 官方Issues

自己封装了request请求,通过storage拿token值,但是封装的文件加载特别快,当时还没有拿到token,导致后期所有请求都失败,需要重新刷页面才能获取token,有思路可以帮忙说一下,感谢

3 回复

/**

* 封装http 请求方法

*/

let global = require(’./global.js’);

const requestUrl=global.baseUrl; //服务器api地址

var token = wx.getStorageSync(‘token’);

var http = (params) => {

//返回promise 对象

return new Promise((resolve, reject) => {

wx.request({

url: requestUrl + params.url,//服务器url+参数中携带的接口具体地址

data: params.data,//请求参数

header: params.header || {

“Accept”:"*/*",

“Content-Type”: params[“content-type”]||“application/json”,//设置后端需要的常用的格式就好,特殊情况调用的时候单独设置

“Authorization”:params.Authorization || "Bearer "+token

},

method: params.method || “GET”,

// dataType: params.dataType,//返回的数据格式,默认为JSON,特殊格式可以在调用的时候传入参数

// responseType: params.responseType,//响应的数据类型

success: function(res) {

resolve(res)

},

fail: function(e) {

reject(e)

}

})

})

}

module.exports = {

http: http

}

让这个文件获取到token在加载

同步拿呀

不知道你的问题在哪里,贴代码出来看会好点

回到顶部