//请求拦截器的使用步骤及功能
//1.创建一个axios实例
//2.请求拦截器,功能是携带请求信息如token
//3.响应拦截器功能:1.对返回来的数据处理,过滤掉无用信息2.处理token失效
//4.导出一个函数,调用当前的axios实例发请求,返回一个promise
import axios from 'axios'
import router from '@/router'
export const baseURL = ''
const instance = axios.create ({
baseURL,
timeout:5000
})
instance.interceptors.request.use(()=>{
//具体的拦截业务逻辑,可以在这里携带token或者修改请求配置
},(err)=>{return Promise.reject(err)})
instance.interceptors.response.use((res)=>{
return res.data//res.data就是响应的数据,直接返回res.data就不需要每次都解析res的结构
if(err.response&&err.response.status===401){
//1.清空无效用户信息
//2.跳转到登录页
//3.跳转需要传参(当前路由地址)
const fullPath = encodeURIComponent(router.currentRoute.value.fullPath)
router.push('/login?rediectUrl'+fullPath)
}
//响应拦截器
},(err)=>{return Promise.reject(err)})
axios拦截器的基本使用
最新推荐文章于 2024-08-04 21:45:12 发布