1 判断是401无权限跳转至登录页面
import axios from 'axios'
import store from '../store'
import router from '../router'
// 创建axios实例
const instance = axios.create({
baseURL: 'http://127.0.0.1:9001/imooc',
timeout: 10000
})
// POST传参序列化
instance.interceptors.request.use((config) => {
// 也可以在这判断 header 里有无 token 并赋值
if (store.state.token) {
config.headers.common['my-e-study-user'] = store.state.token
} else {
}
return config
}, (error) => {
return Promise.reject(error)
})
// 返回状态判断
instance.interceptors.response.use((response) => {
return response
}, (error) => {
if (error.response) {
switch (error.response.status) {
case 401: // 401无权限
store.commit('delToken') //删除token
// 跳转至登录页面并设置redirect属性
router.replace({
path: '/demo/login1',
query: { redirect: router.currentRoute.value.fullPath } // 登录成功后跳入浏览的当前页面