PublicAxiosInstance.js 1.19 KB
import axios from 'axios'
import router from '@/router/index'
import Cookies from "js-cookie"
import {getTimestampString} from "@/PublicUtil/PublicUtil"
import {ElMessage} from 'element-plus'
// 创建 axios 的一个实例
const axiosInstance = axios.create(
    {
        baseURL: ''
    }
)

// 请求拦截器
axiosInstance.interceptors.request.use(
    config => {
        
        // Cookies.set('atoken','90eeca8f-7d7e-4dfa-8d7b-468e033dd048')
        config.headers.Authorization = Cookies.get('atoken')

        return config
    }
)

// 响应拦截器
axiosInstance.interceptors.response.use(
    (r) => {
        const responseData = r.data
		if(responseData.ecode && responseData.ecode == '401'){
			ElMessage({
				message: `登录过期,请重新登录`,
				type: 'warning'
			})
            // setTimeout(()=>{
            //     let url =  ['localhost', '192.168.1.174'].includes(window.location.hostname) ? 'http://36.112.68.214:33333/' : window.location.origin
            //     window.location.href=url;
            // },300)
			return
		}
        return responseData
    },
    (e) => {
        const responseData = e.response

        return responseData
    }
)

export default axiosInstance