写在响应拦截里
// respone拦截器
service.interceptors.response.use(
async response => {
Toast.clear()
const res = response.data
if (!res.isSuccess) {
// 获取token 并存储到本地存储里
let token = await store.dispatch('GETTOKEN')
let config = response.config
// 这里需要使用最新的token 否则携带的是过期token
config.headers['token'] = token
// 重新执行token过期的请求
const resp = await service.request(response.config)
return Promise.resolve(resp)
}
return Promise.resolve(res)
},
error => {
Toast.clear()
console.log('err' + error) // for debug
return Promise.reject(error)
}
)