VUE-Request接口封装
- 创建utils包创建request.js 文件
编写Request接口
import axios from 'axios'
import Element from 'element-ui'
import {serverIp} from "../../public/config";
const request = axios.create({
baseURL: `http://${serverIp}:8081`,
timeout: 5000
})
request.interceptors.request.use(config => {
config.headers['Content-Type'] = 'application/json;charset=utf-8';
let user = localStorage.getItem("user")?JSON.parse(localStorage.getItem("user")):null
if(user){
config.headers['token'] = user.token;
}
return config
}, error => {
return Promise.reject(error)
});
request.interceptors.response.use(
response => {
let res = response.data;
if (response.config.responseType === 'blob') {
return res
}
if (typeof res === 'string') {
res = res ? JSON.parse(res) : res
}
if(res.code==401){
Element.Message({
message: res.msg,
type: 'error'
})
}
return res;
},
error => {
console.log('err' + error)
return Promise.reject(error)
}
)
export default request
- 在main.js 文件中全局引入
import request from '@/utils/request';
- 在VUE文件中引入