Files
jwl-applet/src/jtools/request/index.js

54 lines
1.3 KiB
JavaScript
Raw Normal View History

2023-08-12 22:15:27 +08:00
import storage from '../storage/index.js';
2023-08-19 00:52:53 +08:00
import useUserStore from '@/jtools/store/user'
2023-08-12 22:15:27 +08:00
//把配置项单独处理
let server_url = ' '; // 请求地址
let token = ' '; // 凭证
server_url = import.meta.env.VITE_APP_BASE_API; //环境配置
function service(options = {}) {
storage.get('token') && (token = storage.get('token'));
options.url = `${server_url}${options.url}`;
if (!options.noToken) {
if (!token.trim()) {
uni.redirectTo({
url: '/pages/login/login'
});
} else {
options.header = {
2023-08-19 16:22:34 +08:00
Authorization: `${token}`
2023-08-12 22:15:27 +08:00
};
}
}
return new Promise((resolved, rejected) => {
//成功
options.success = res => {
if (res.data.code == 'E403') {
// 未登录
uni.showToast({
2023-08-19 17:42:47 +08:00
title: res?.data?.message || '请重新登录',
2023-08-12 22:15:27 +08:00
icon: 'none'
});
2023-09-17 13:18:59 +08:00
useUserStore().logoutWithoutToken()
2023-08-12 22:15:27 +08:00
//请求成功
resolved(res.data);
2023-09-06 00:28:46 +08:00
} else if(res.data.code != '0000'&&res.data.code !='4001') {
2023-08-19 00:52:53 +08:00
uni.showToast({
2023-08-19 17:42:47 +08:00
title: res?.data?.message || '访问出错',
2023-08-19 00:52:53 +08:00
icon: 'none'
})
resolved(res.data)
2023-08-12 22:15:27 +08:00
} else {
//请求成功
resolved(res.data);
}
};
//错误
options.fail = err => {
rejected(err); //错误
};
uni.request(options);
});
}
export default service;