From 2dfc8dc4bcd3d3cd4aed1b6054e073e140eba9c8 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Mon, 19 May 2025 16:05:50 +0800
Subject: [PATCH] Merge branch 'master' into jiangwu
---
src/axios.js | 17 +++++++++++------
1 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/src/axios.js b/src/axios.js
index ac199bb..76fa2d0 100644
--- a/src/axios.js
+++ b/src/axios.js
@@ -5,6 +5,7 @@
* isSerialize是否开启form表单提交
* isToken是否需要token
*/
+
import axios from 'axios';
import store from '@/store/';
import router from '@/router/';
@@ -37,6 +38,7 @@
// 全局未授权错误提示状态,只提示一次
let isErrorShown = false;
+let _retry = false;
// 超时时间设置为10分钟,部分接口上传比较慢,如固件上传
axios.defaults.timeout = 600000;
//返回其他状态码
@@ -61,6 +63,9 @@
config.url = baseUrl + config.url;
}
//安全请求header
+ console.log('selectedAreaCode',store.state.user.userInfo.detail.areaCode);
+
+ config.headers['areaCode'] = store.state.user.userInfo.detail.areaCode
config.headers['Blade-Requested-With'] = 'BladeHttpRequest';
//headers判断是否需要
const authorization = config.authorization === false;
@@ -113,15 +118,15 @@
NProgress.done();
const status = res.data.error_code || res.data.code || res.status;
const statusWhiteList = website.statusWhiteList || [];
- const message = res.data.msg || res.data.error_description || '系统错误';
+ const message = res.data.msg || res.data.error_description || res.data.message ||'系统错误';
const config = res.config;
const cryptoData = config.cryptoData === true;
//如果在白名单里则自行catch逻辑处理
if (statusWhiteList.includes(status)) return Promise.reject(res);
// 如果是401并且没有重试过,尝试刷新token
- if (status === 401 && !config._retry) {
+ if (status === 401 && !_retry) {
// 标记此请求已尝试刷新token
- config._retry = true;
+ _retry = true;
// 调用RefreshToken action来刷新token
return store
.dispatch('RefreshToken')
@@ -159,7 +164,7 @@
});
}
// 如果是401并且已经重试过,直接跳转到登录页面
- if (status === 401 && config._retry) {
+ if (status === 401 && _retry) {
// 首次报错时提示
if (!isErrorShown) {
isErrorShown = true;
@@ -190,7 +195,7 @@
return Promise.reject(new Error(message));
}
// 如果请求为非200默认统一处理
- if (status !== 200) {
+ if (status !== 200 && status !== 0) {
if (!isErrorShown) {
ElMessage({
message: message,
@@ -211,4 +216,4 @@
}
);
-export default axios;
\ No newline at end of file
+export default axios;
--
Gitblit v1.9.3