|
|
@@ -14,7 +14,7 @@ |
|
|
|
*/ |
|
|
|
import axios, { AxiosInstance, AxiosError, AxiosRequestConfig, InternalAxiosRequestConfig, AxiosResponse } from "axios"; |
|
|
|
import { showFullScreenLoading, tryHideFullScreenLoading } from "@/components/Loading/fullScreen"; |
|
|
|
import { LOGIN_URL } from "@/config"; |
|
|
|
import { LOGIN_URL, AUTH_URL } from "@/config"; |
|
|
|
import { ElMessage } from "element-plus"; |
|
|
|
import { ResultData } from "@/api/interface"; |
|
|
|
import { ResultEnum, TokenEnum } from "@/enums"; |
|
|
@@ -149,15 +149,20 @@ export default class RequestHttp { |
|
|
|
}, |
|
|
|
async (error: AxiosError) => { |
|
|
|
const { response } = error; |
|
|
|
tryHideFullScreenLoading(); |
|
|
|
// 请求超时 && 网络错误单独判断,没有 response |
|
|
|
if (error.message.indexOf("timeout") !== -1) ElMessage.error("请求超时!请您稍后重试"); |
|
|
|
if (error.message.indexOf("Network Error") !== -1) ElMessage.error("网络错误!请您稍后重试"); |
|
|
|
// 根据服务器响应的错误状态码,做不同的处理 |
|
|
|
if (response) checkStatus(response.status); |
|
|
|
// 服务器结果都没有返回(可能服务器错误可能客户端断网),断网处理:可以跳转到断网页面 |
|
|
|
if (!window.navigator.onLine) router.replace("/500"); |
|
|
|
return Promise.reject(error); |
|
|
|
console.log(response, "err"); |
|
|
|
if (response?.status === 421) { |
|
|
|
router.replace(AUTH_URL); |
|
|
|
} else { |
|
|
|
tryHideFullScreenLoading(); |
|
|
|
// 请求超时 && 网络错误单独判断,没有 response |
|
|
|
if (error.message.indexOf("timeout") !== -1) ElMessage.error("请求超时!请您稍后重试"); |
|
|
|
if (error.message.indexOf("Network Error") !== -1) ElMessage.error("网络错误!请您稍后重试"); |
|
|
|
// 根据服务器响应的错误状态码,做不同的处理 |
|
|
|
if (response) checkStatus(response.status); |
|
|
|
// 服务器结果都没有返回(可能服务器错误可能客户端断网),断网处理:可以跳转到断网页面 |
|
|
|
if (!window.navigator.onLine) router.replace("/500"); |
|
|
|
return Promise.reject(error); |
|
|
|
} |
|
|
|
} |
|
|
|
); |
|
|
|
} |
|
|
|