import axios from 'axios'
// 创建axios实例
const httpService = axios.create({ timeout: 30000 })
// response拦截器
`httpService.interceptors.response.use(
response => {
const res = response.data
if (res.code===401) {
const { refresh_token } = getToken()
if (!refresh_token) {
// 没有登陆过 无token
return router.push("/login");
}
// 有token 但是 token过期
try {
// 根据 refresh_token 获取新的token
const { token } =await getRefreshToken()
//存储token
localStorage.setItem('token', JSON.stringify(token))
// 重新发送请求
return request(error.response.config);
}
catch (e) {
return router.push("/login");
}
)`