| 123456789101112131415161718192021222324252627282930313233343536 |
- import router from '@/router/index'
- import axios from 'axios'
- import Message from '@/utils/Message'
- const api = import.meta.env.VITE_API_HOST
- const instance = axios.create({
- baseURL: api
- })
- // 请求拦截器
- instance.interceptors.request.use((config:any) => {
- config.headers['Authorization'] = localStorage.getItem('token')
- return config
- }, err => {
- return Promise.reject(err)
- })
- // 响应拦截器
- instance.interceptors.response.use(response => {
- return response
- }, err => {
- if (err.response.status === 401) {
- localStorage.removeItem('token')
- Message.error('登录状态已失效!请重新登录!')
- setTimeout(() => {
- const isMobile = !!navigator.userAgent.match(/AppleWebKit.*Mobile.*/)
- router.push({ path: isMobile ? '/m_login' : '/p_login' })
- }, 1000)
- }
- return Promise.reject(err.response)
- })
- // 导出工具函数
- export default instance
|