Axios请求拦截器和Axios响应拦截器

在使用axios进行HTTP请求时,请求拦截器(Request Interceptors)和响应拦截器(Response Interceptors)是非常有用的功能,它们允许你在请求被发送到服务器之前或在服务器响应被then或catch处理之前对它们进行拦截。

一、安装axios

javascript 复制代码
npm install axios

二、导入axios

javascript 复制代码
//axios基础封装
import axios from "axios";
import { ElMessage } from "element-plus";

三、创建一个可以发起请求获得响应的实例

javascript 复制代码
const httpInstance = axios.create({
    timeout:50000
})

四、配置请求拦截器

javascript 复制代码
//配置拦截器
//axios请求拦截器
httpInstance.interceptors.request.use(config =>{
    return config
},e => Promise.reject(e))

五、配置响应拦截器

javascript 复制代码
//axios响应拦截器
httpInstance.interceptors.response.use(res =>res.data,e =>{
    if(e.response.status==401){
        // console.log("请登录")
        ElMessage.error("请先登录")
        //跳转登录页面
    }else{
        // console.log("其他状态")
        ElMessage({type:'error',message:'请重新登录'+e})
    }
    return Promise.reject(e)
})

export default httpInstance  //对外暴露,用于在其他位置调用
相关推荐
|晴 天|6 分钟前
Vue 3 + TypeScript + Element Plus 博客系统开发总结与思考
前端·vue.js·typescript
猫32844 分钟前
v-cloak
前端·javascript·vue.js
旷世奇才李先生1 小时前
Vue 3\+Vite\+Pinia实战:企业级前端项目架构设计
前端·javascript·vue.js
SoaringHeart2 小时前
Flutter进阶:用OverlayEntry 实现所有弹窗效果
前端·flutter
IT_陈寒4 小时前
Vite静态资源加载把我坑惨了
前端·人工智能·后端
herinspace4 小时前
管家婆实用贴-如何分离和附加数据库
开发语言·前端·javascript·数据库·语音识别
小码哥_常5 小时前
从MVC到MVI:一文吃透架构模式进化史
前端
嗷o嗷o5 小时前
Android BLE 的 notify 和 indicate 到底有什么区别
前端
豹哥学前端5 小时前
别再背“var 提升,let/const 不提升”了:揭开暂时性死区的真实面目
前端·面试
lar_slw5 小时前
k8s部署前端项目
前端·容器·kubernetes