management_UI/src/utils/request.js
2020-11-03 11:02:17 +08:00

83 lines
2.3 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import axios from 'axios'
import { Message, Loading } from 'element-ui'
// const id = Loading.service({
// target: document.querySelector('.appamin'),
// background: 'rgba(255, 255, 255, 0.1)',
// spinner: 'el-icon-loading',
// text: '请求加载中。。。'
// })
// id.close()
// import store from '@/store'
// import { getToken } from '@/utils/auth'
// import errorCode from '@/utils/errorCode'
// axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
// axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded'
// 创建axios实例
const service = axios.create({
// axios中请求配置有baseURL选项表示请求URL公共部分
// baseURL: process.env.VUE_APP_BASE_API,
// 超时
timeout: 1500000
})
const options = {
fullscreen: true,
target: document.querySelector('.appamin'),
background: 'rgba(255, 255, 255, 0.8)',
spinner: 'el-icon-loading',
text: '数据加载中'}
// request拦截器
service.interceptors.request.use(config => {
console.log(`request.config=>`, config)
Loading.service(options)
// 是否需要设置 token
// const isToken = (config.headers || {}).isToken === false
// if (getToken() && !isToken) {
// config.headers['Authorization'] = 'Bearer ' + getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
// }
return config
}, error => {
console.log(error)
Promise.reject(error)
})
// 响应拦截器
service.interceptors.response.use(res => {
console.log(`response.res=>`, res)
const id = setTimeout(() => {
Loading.service(options).close()
clearTimeout(id)
}, 300)
if (res.config.responseType === 'blob') {
return res
}
return res.data
},
error => {
const id = setTimeout(() => {
Loading.service(options).close()
clearTimeout(id)
}, 300)
console.log('err' + error)
let { message } = error
if (message === 'Network Error') {
message = '后端接口连接异常'
} else if (message.includes('timeout')) {
message = '系统接口请求超时'
} else if (message.includes('Request failed with status code')) {
message = '系统接口' + message.substr(message.length - 3) + '异常'
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
export default service