zhanghua
2025-04-14 829f5116884f98643ffc5b2a548a600d40c0cedb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import axios from 'axios';
import router from '@/router'
// 引入elementUI
import tip from 'element-ui';
const api = axios.create({
  baseURL: '/', // 请求的公共地址部分
  timeout: 15000
})
// 拦截器
// 请求
api.interceptors.request.use((config) => {
  const token = sessionStorage.getItem('token');
  const tokenHead = sessionStorage.getItem('tokenHead');
  if (token && tokenHead) {
    config.headers.Authorization = tokenHead + token;
  }
  return config;
}, (err) => {
}
)
// 响应
api.interceptors.response.use(
  (response) => {
    let result = response.data;
    if (response.headers['content-disposition']) {
         result = {
            contentDisposition: response.headers['content-disposition'],
            data: response.data
        }
    }
    if (response.status === 200 && result.code === 200) {
      return result;
    } else if (response.status === 200 && result.code === 500) {
      return result;
    } else if (response.status === 200 && result.code === 401) {
      tip.Message({
        type: 'warning',
        message: '登录身份已过期',
      })
      router.push('/login');
    } else {
      return result;
    }
  },
  (error) => {
    let msg =''
    if (error.code === 'ERR_NETWORK') {
        msg = '网络请求超时'
    }else{
      msg = '网络错误'
    }
    tip.Message({
      type: 'error',
      message: msg
    })
  },
)
export default api;