2024-11-28 12:57:22 +08:00

66 lines
1.5 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//axios基础的封装
import axios from "axios"
import { ElMessage } from "element-plus"
import "element-plus/theme-chalk/el-message.css"
import { useUserStore } from "@/stores/user"
// import router from "@/router/index"
//axios基础封装1默认
const httpInstance1 = axios.create({
//配置基地址
baseURL: "http://192.168.1.6:8080/",
// baseURL: "http://www.mi9688.top/api/",
//配置超时时间
timeout: 20000,
})
// axios请求拦截器
httpInstance1.interceptors.request.use(
(config) => {
const userStore = useUserStore();
const token = userStore.userInfo.token;
// console.log("请求拦截器得到token" + token);
config.headers["Content-Type"] = "application/json";
if (token) {
config.headers.Authorization = "Bearer " + token;
}
eval()
return config;
},
(e) => Promise.reject(e)
)
// axios响应式拦截器
httpInstance1.interceptors.response.use(
(res) => res.data,
(e) => {
console.log("响应拦截器:")
console.log(e.response)
//统一错误提示
//服务器错误处理
if (e.response.status === 500) {
ElMessage({
type: "error",
message: "服务器错误!",
})
}
//业务异常处理
if(e.response.data.code===0){
ElMessage({
type: "error",
message: e.response.data.message,
})
}
ElMessage({
type: "error",
message: "网络波动异常!",
})
return Promise.reject(e)
}
);
export default httpInstance1