import config from "./config.js";
import request from "./request.js";
// 全局请求封装
async function $http(url, method = "GET", params = {}) {
url = config.baseUrl + url
var {
data,
header,
} = params
const token = uni.getStorageSync('token');
if (!config.whiteList.some(x => url.indexOf(x) > -1)) { //判断是不是登录页面
console.log("不在白名单");
if (!token) {
console.log("用户未登录");
return;
}
//可以根据url分别判断 JWT认证要修改header 携带token
header = {
"Authorization": token
}
} else {
console.log("在白名单,可以直接访问");
}
var res = await request(url, method, data, header)
var {
statusCode,
errMsg,
data
} = res
console.log("statusCode: ", statusCode, config.statusCodeList[statusCode + ""]);
// statusCode后续处理 switch_case
switch (statusCode) {
case 200:
//dosomething
break;
default:
console.log("errMsg: ", errMsg);
}
return res
};
export default $http
//import $http from "./http.interceptor.js";
uni-app学习笔记之$http拦截器
最新推荐文章于 2023-03-05 19:58:54 发布