111
jihongshun
8 天以前 0c741cdda7ef9935a20d3090dfea97e1ce8ae754
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
import axios from 'axios'
import { MessageBox, Message } from 'element-ui'
import {getToken, removeToken} from "@/utils/auth";
 
const httpUtil = axios.create({
    timeout: 12000 // request timeout
})
httpUtil.interceptors.request.use(
    config => {
        const token = getToken();
        if (token) {
            config.headers['X-Token'] = token
        }
        return config
    },
    error => {
        return Promise.reject(error)
    }
)
 
httpUtil.interceptors.response.use(
    response => {
        const res = response.data
        if (res.code && res.code !== 1) {
            if(res.code === 301 || res.code === 302) {
                MessageBox.confirm('登录状态失效,请退出重新登录', '确认退出', {
                    confirmButtonText: '重新登录',
                    cancelButtonText: '关闭',
                    type: 'warning'
                }).then(() => {
                    removeToken();
                    location.reload()
                })
            }
            Message.error(res.msg)
            return Promise.reject(new Error(res.msg || 'Error'))
        }
        return res;
    }, error => {
        console.log('err', error)
        Message.error(error.message)
        return Promise.reject(error)
    }
)
httpUtil.doRequest = function (url, method, params) {
    return httpUtil({
        url: url,
        method: method,
        params
    })
}
httpUtil.doGet = function (url, params) {
    return httpUtil({
        url: url,
        method: 'get',
        params
    })
}
httpUtil.doPost = function (headers, url, data) {
    return httpUtil({
        headers: headers,
        url: url,
        method: 'post',
        data: data
    })
}
export default httpUtil