/*
|
* @Description:
|
* @Author: 王旭
|
* @Date: 2022-03-03 15:10:54
|
* @LastEditTime: 2022-04-13 15:19:08
|
* @LastEditors: 王旭
|
*/
|
import axios from "axios";
|
import { ElMessage, ElLoading } from "element-plus";
|
import store from "@/store";
|
|
// create an axios instance
|
const service = axios.create({
|
baseURL: BASE_URL, // api的base_url
|
timeout: 1200000, // 请求超时时间
|
// headers: {
|
// "content-type": "application/json;charset=UTF-8",
|
// },
|
// withCredentials: true,
|
});
|
// console.log(store);
|
// request interceptor
|
service.interceptors.request.use(
|
(config) => {
|
// 请求携带token
|
// if (store.getters.token) {
|
// config.headers["X-Token"] = getToken();
|
// }
|
//加载loading
|
store.commit("UPDATE_API_COUNT", "add");
|
return config;
|
},
|
(error) => {
|
//减去loading
|
store.commit("UPDATE_API_COUNT", "sub");
|
console.log(error); // for debug
|
return Promise.reject(error);
|
}
|
);
|
service.interceptors.response.use(
|
(response) => {
|
store.commit("UPDATE_API_COUNT", "sub");
|
// 报错提示
|
if (response.data.code !== 200) {
|
ElMessage.error(response.data.msg);
|
}
|
return response.data;
|
},
|
(error) => {
|
store.commit("UPDATE_API_COUNT", "sub");
|
ElMessage({
|
message: error.message,
|
type: "error",
|
duration: 5 * 1000,
|
});
|
return Promise.reject(error);
|
}
|
);
|
|
export default service;
|