Commit 5699393c authored by “yiyousong”'s avatar “yiyousong”

perf: 优化首页数据获取

parent fc9e93ab
......@@ -2,15 +2,18 @@
* axios 工具函数层
*/
import axios from "axios";
import { Message } from "element-ui";
import { message } from "@/utils/resetMessage";
// import local from "@/utils/local";
// 请求超时时间
// axios.defaults.timeout = 15 * 1000;
const instance = axios.create({
// 请求超时时间
timeout: 20 * 1000,
});
// 设置统一服务器地址
// axios.defaults.baseURL = local.getLocal("serverUrl");
// 请求拦截
axios.interceptors.request.use(
instance.interceptors.request.use(
(config) => {
// let token = local.getLocal('token')
// if (token) {
......@@ -24,31 +27,48 @@ axios.interceptors.request.use(
);
// 响应拦截
axios.interceptors.response.use(
instance.interceptors.response.use(
(response) => {
if (response.data.code !== undefined && response.data.msg !== undefined) {
// 取出数据
let { code, msg } = response.data;
if (code === -1) {
Message.error({
message.error({
message: msg,
});
} else if (code === 401) {
Message.error({
message.error({
message: msg,
});
}
}
return response;
},
(err) => {
if (err.message.includes("timeout")) {
Message.error({
message: "请求超时,请稍后再试",
(error) => {
let path = window.location.hash;
if (
error.response &&
error.response.status &&
error.response.status != 200 &&
path == "#/"
) {
setTimeout(() => {
// 重新发送请求
return instance(error.config);
}, 5000);
} else if (error.request && path == "#/") {
setTimeout(() => {
// 重新发送请求
return instance(error.config);
}, 5000);
}
if (error.message.includes("timeout")) {
message.error({
message: "网络不给力呀",
});
}
return Promise.reject(err);
return Promise.reject(error);
}
);
export default axios;
export default instance;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment