http.js
1.5 KB
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// 引入axios
import axios from 'axios'
import router from '../router'
import store from '@/store'
import { ElMessage } from 'element-plus'
const request = axios.create({
baseURL: 'http://192.168.3.48:8080/manageSystem/teacher',
timeout: 15000, //请求超时
})
// 请求拦截器
request.interceptors.request.use(
// config=> {
// const token = setting.takeToken()
// // config.token &&
// if (token) {
// config.headers[setting.tokenHeaderName] = token
// }
// const userId=setting.userId()
// if (userId&&config.userID) {
// config.data.userId=userId
// }
// return config
// },
// error => {
// return Promise.reject(error)
// }
)
// 响应拦截器
request.interceptors.response.use(
response => {
const res = response.data
// 0表示成功
if (res.code == 0) {
return res
}
// 401表示没有登录失效
if (res.code == 401) { // 如果请求失败,则给一个提示 并返回登录页
ElMessage({
message: res.msg,
type: 'error',
})
localStorage.clear()
store.state.loginShow=!store.state.loginShow
return
router.replace({
path: '/',
})
}
ElMessage({
message: res.msg || 'Error',
type: 'error',
duration: 2 * 1000
})
return Promise.reject(res)
},
error => {
ElMessage({
message: error.msg || '系统错误',
type: 'error',
})
return Promise.reject(error)
}
)
export default request