合并后代码
This commit is contained in:
+89
-28
@@ -1,44 +1,105 @@
|
||||
import axios from "axios";
|
||||
import {
|
||||
ElMessage
|
||||
} from "element-plus";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import router from "../router/router";
|
||||
|
||||
const errorCode = {
|
||||
401: "登录状态已过期,即将返回首页重新登录。",
|
||||
403: "当前操作没有权限",
|
||||
404: "访问资源不存在",
|
||||
default: "系统未知错误,请反馈给管理员",
|
||||
};
|
||||
|
||||
const url = "https://repair.cpolar.top"; // "https://hazard.cpolar.top";
|
||||
|
||||
const service = axios.create({
|
||||
timeout: 5000,
|
||||
baseURL: url,
|
||||
timeout: 5000,
|
||||
});
|
||||
|
||||
// Request interceptors
|
||||
service.interceptors.request.use(
|
||||
(config) => {
|
||||
if (localStorage.getItem('token'))
|
||||
config.headers.token = localStorage.getItem('token')
|
||||
(config) => {
|
||||
if (localStorage.getItem("token")) {
|
||||
config.headers["Authorization"] =
|
||||
"Bearer " + localStorage.getItem("token");
|
||||
}
|
||||
|
||||
return config;
|
||||
},
|
||||
(error) => {
|
||||
Promise.reject(error);
|
||||
}
|
||||
if (config.url === "/login") {
|
||||
config.headers["Content-Type"] = "multipart/form-data";
|
||||
} else {
|
||||
config.headers["Content-Type"] = "application/json";
|
||||
}
|
||||
|
||||
let params = config.params;
|
||||
let newData = {};
|
||||
for (let key in params) {
|
||||
if (params[key] !== null && params[key] !== "") {
|
||||
newData[key] = params[key];
|
||||
}
|
||||
}
|
||||
config.params = newData;
|
||||
return config;
|
||||
},
|
||||
(error) => {
|
||||
Promise.reject(error);
|
||||
}
|
||||
);
|
||||
|
||||
// Response interceptors
|
||||
service.interceptors.response.use(
|
||||
(response) => {
|
||||
|
||||
if (response.status !== 200) {
|
||||
ElMessage({
|
||||
type: "error",
|
||||
message: "服务器忙,请稍后再试~",
|
||||
});
|
||||
return;
|
||||
(res) => {
|
||||
// 对响应数据做点什么
|
||||
const response = res.data;
|
||||
const code = res.data.code || 200;
|
||||
const message = errorCode[code] || res.data.msg || errorCode["default"];
|
||||
if (code === 401) {
|
||||
if (res.code === 401 || res.code === 4001) {
|
||||
// 清除浏览器全部临时缓存
|
||||
sessionStorage.clear();
|
||||
localStorage.clear();
|
||||
router.push("/login");
|
||||
// store.commit('setMenuData', {});
|
||||
// resetRouter(); // 重置路由
|
||||
ElMessageBox.alert("你已被登出,请重新登录", "提示", {})
|
||||
.then(() => {})
|
||||
.catch(() => {});
|
||||
}
|
||||
} else if (code === 500) {
|
||||
// Message({ message: msg, type: 'error' })
|
||||
ElMessage.error(message);
|
||||
return Promise.reject(new Error(msg));
|
||||
} else if (code === 601) {
|
||||
// Message({ message: msg, type: 'warning' })
|
||||
ElMessage.error(message);
|
||||
return Promise.reject("error");
|
||||
} else if (code != 200) {
|
||||
ElMessage.error(message);
|
||||
return Promise.reject("error");
|
||||
} else {
|
||||
return response;
|
||||
}
|
||||
},
|
||||
(error) => {
|
||||
console.log(error.response.data); // 获取错误状态码
|
||||
// 对响应错误做点什么
|
||||
if (error.message.indexOf("timeout") != -1) {
|
||||
ElMessage.error("网络超时");
|
||||
} else if (error.message == "Network Error") {
|
||||
ElMessage.error("网络连接错误");
|
||||
} else if (error.response.data.code == "401") {
|
||||
sessionStorage.clear();
|
||||
localStorage.clear();
|
||||
router.push("/login");
|
||||
ElMessage.error(error.response.data.msg);
|
||||
} else {
|
||||
ElMessage.error(
|
||||
error.response.data.msg ||
|
||||
error.response.data.error ||
|
||||
error.response.data.errMessage
|
||||
);
|
||||
}
|
||||
return Promise.reject(error);
|
||||
}
|
||||
|
||||
return response;
|
||||
},
|
||||
(error) => {
|
||||
// do something
|
||||
return Promise.reject(error);
|
||||
}
|
||||
);
|
||||
|
||||
export default service;
|
||||
export default service;
|
||||
|
||||
Reference in New Issue
Block a user