|
@@ -1,6 +1,7 @@
|
|
|
import {message} from "ant-design-vue";
|
|
import {message} from "ant-design-vue";
|
|
|
import axios, {AxiosError, type AxiosRequestConfig} from "axios";
|
|
import axios, {AxiosError, type AxiosRequestConfig} from "axios";
|
|
|
import { routeToLogin } from "@/router";
|
|
import { routeToLogin } from "@/router";
|
|
|
|
|
+import type { MessageType } from "ant-design-vue/lib/message";
|
|
|
|
|
|
|
|
const urlPrefix = "/";
|
|
const urlPrefix = "/";
|
|
|
|
|
|
|
@@ -23,6 +24,8 @@ httpClient.interceptors.request.use(function (config: AxiosRequestConfig) {
|
|
|
return Promise.reject(error);
|
|
return Promise.reject(error);
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
+let errorMsgHandler: MessageType | null = null;
|
|
|
|
|
+
|
|
|
// 添加响应拦截器
|
|
// 添加响应拦截器
|
|
|
httpClient.interceptors.response.use(function (response) {
|
|
httpClient.interceptors.response.use(function (response) {
|
|
|
// 对响应数据做点什么
|
|
// 对响应数据做点什么
|
|
@@ -31,10 +34,13 @@ httpClient.interceptors.response.use(function (response) {
|
|
|
if (error.response?.status == 404) {
|
|
if (error.response?.status == 404) {
|
|
|
message.error("请求参数错误!");
|
|
message.error("请求参数错误!");
|
|
|
} else if (error.response?.status == 401) {
|
|
} else if (error.response?.status == 401) {
|
|
|
- return routeToLogin();
|
|
|
|
|
|
|
+ routeToLogin();
|
|
|
} else if (error) {
|
|
} else if (error) {
|
|
|
- // @ts-ignore
|
|
|
|
|
- message.error(error.response.data.msg);
|
|
|
|
|
|
|
+ if (errorMsgHandler != null) {
|
|
|
|
|
+ errorMsgHandler()
|
|
|
|
|
+ }
|
|
|
|
|
+ errorMsgHandler = message.error(error.message);
|
|
|
|
|
+ routeToLogin();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
return Promise.reject(error);
|
|
return Promise.reject(error);
|