npm i axios
新建request.js文件
request.js
import axios from 'axios'
import store from '@/store'
import router from '@/router'
export const baseURL = 'http://www.xxx.com'
const instance = axios.create({
baseURL,
timeout: 5000
})
// 请求头拦截器
instance.interceptors.request.use(config => {
// 拦截业务逻辑,内容可替换
// 1. 获取用户信息对象
const { profile } = store.state.user;
// 2. 判断是否有token
if (profile.token) {
// 3. 设置token
config.headers.Authorization = `Bearer ${profile.token}`
}
return config
}, err => {
return Promise.reject(err);
})
// 响应拦截器
instance.interceptors.response.use(res => res.data, err => {
// 失败时进入这里,内容根据store文件里的内容可替换
if (err.response &