统一处理http的request、response
1.request拦截器
axios.interceptors.request.use(
config => {
//如果token存在,就给所有的请求头加上token,后台是根据token来决定给不给你数据
if(store.state.token) {
config.headers.Authorization = `token${store.state.token}`
}
return Promise.reject(err)
},
err => Promise.reject(err)
)
2.response拦截器
axios.interceptors.response.use(
response => response;
,err => {
//根据后台返回的状态码进行判断,并进行相关操作
if(err.response) {
switch(err.response.status) {
case 401:
router.replace({
path: 'login',
query: {
redirect: router.currentRoute.fullPath
}
})
}
}
return Promise.reject(error.response.data)
}
)
token是由后台返回给前端的