axios拦截器 config_vue中axios拦截器的使用
1.拦截器分为request请求拦截器和response响应拦截器
PS:request请求拦截器:发送请求前统一处理,如:设置请求头headers、应用的版本号、终端类型等。
response响应拦截器:有时候我们要根据响应的状态码来进行下一步操作,例如:由于当前的token过期,接口返回401未授权,那我们就要进行重新登录的操作。
2.main.js文件中(先安装axios)
import axios from 'axios'
// 给Vue函数添加一个原型属性$axios指向axios(全局使用axios)
// vue实例中直接用this.$axios就可以执行axios方法
Vue.prototype.$axios=axios
3.http request 请求拦截器
PS:发送请求之前判断是否存在token,除了登录页,其他页面请求头headers都添加token
// http request 请求拦截器
axios.interceptors.request.use(config => {
// 在发送请求之前做些什么
let pathname = location.pathname;
if(localStorage.getItem('token')){
if(pathname != '/' && pathname != '/login'){
config.headers.common['token'] = localStorage.getItem('token');
}
}
return config;
}, error => {
// 对请求错误做些什么
return Promise.reject(error);
});
4.http response 响应拦截器
PS:若返回401,页面跳转到登录页面
// http response 响应拦截器
axios.interceptors.response.use(response => {
return response;
},error => {
if (error.response) {
switch (error.response.status) {
// 返回401,清除token信息并跳转到登录页面
case 401:
localStorage.removeItem('token');
router.replace({
path: '/login'
//登录成功后跳入浏览的当前页面
// query: {redirect: router.currentRoute.fullPath}
})
}
// 返回接口返回的错误信息
return Promise.reject(error.response.data);
}
});
axios拦截器 config_vue中axios拦截器的使用相关推荐
- dio拦截器 flutter_Flutter 中 Dio 拦截器
有时我们不需要复杂的应用程序,只需要显示一个数据列表的简单功能,我们可以通过一个简单的方法来实现: Future fetchItems() { return Dio().("https:// ...
- python装饰器 property_Python中@property装饰器的使用技巧性解析(代码示例)
Python中@property装饰器的技巧性用法(代码示例) 本篇文章给大家带来的内容是关于Python中@property装饰器的技巧性用法(代码示例),有一定的参考价值,有需要的朋友可以参考一下 ...
- python装饰器-python中的装饰器常用于哪些应用场景
最新回答 2019-12-08回答 所谓装饰器就是把函数包装一下,为函数添加一些附加功能,装饰器就是一个函数,参数为被包装的函数,返回包装后的函数:你可以试下: de d(p): de _d(*arg ...
- python重写和装饰器_python中的装饰器
装饰器的本质: 当你在用某个@decorator来修饰某个函数func时,如下所示: @decorator def func(): pass 其解释器会解释成下面这样的语句: func=decorat ...
- maya阿诺德渲染失败_maya2018无法加载ARNOLD渲染器?maya2018中ARNOLD渲染器加载不了怎么办?...
maya2018无法加载ARNOLD渲染器可通过以下方法解决. 1.首先右键点击我的电脑并选择属性. 2.然后点击高级系统设置,打开系统属性面板. 3.打开系统属性面板之后在高级选项卡下点击环境变量. ...
- java中什么是布局管理器_Java中布局管理器
布局管理器种类 FlowLayout: 组件在一行中从左至右水平排列,排满后折行,它是Panel.Applet的默认布局管理器. BorderLayout:北.南.东.西.中,它是Window.Fra ...
- java访问器_Java中的访问器方法
因此,我对" setter"和" getter"方法以及它们的有用与否有疑问. 假设我只是写了一个非常基本的程序,如下所示: public class Acco ...
- python中修饰器_python 中的修饰器
参考文章 @property和@ .setter的用法: @property 把属性装饰成get方法 给属性赋值时,会自动调用@property装饰的方法 只设置属性的@property 时,属性为只 ...
- SpringMVC中的拦截器
SpringMVC中的拦截器 拦截器的作用 Spring MVC 的处理器拦截器类似于 Servlet 开发中的过滤器 Filter,用于对处理器进行预处理和后处理. 用户可以自己定义一些拦截器来实现 ...
最新文章
- 配置zendframework开始工作(加入环境变量)
- 不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧
- 微信小程序开发文档链接
- 从纸钱包,带你走进贴心的BCH!
- esp32 rtc 时钟设置不对_咱们RTC时钟案例的时间为什么开始的时候总是2014年,怎么改呢?...
- github随时同步代码_GitHub代码下载和同步
- svn服务器地址更改
- cocos2d-x中使用Http
- 已知圆心 坐标和一点坐标和角度 就之后的坐标_LaTeX 中绘制多个相交椭圆(对起始角度与终止角度的思考)...
- 人工智能-基于规则的专家系统(基础知识)
- winform textbox文本框根据内容自动调整高度
- YML解析框架SnakeYaml简介
- MTCNN优化和另类用法
- 指针(一)(基本概念)
- HTML5 颜色及透明度
- try、catch、finally 用法总结
- 金色新版萝卜影视系统源码+影视系统APP源码
- BUUCTF-MISC-九连环
- 苹果手机计算机有哪些功能,苹果iPhone手机问答:iPhone计算器原来这么好用 神奇功能汇总...
- vbscript 学习笔记
热门文章
- 两张图教会你编程学习哪些东西
- 老牌vs大牌!CleanMyMac X和腾讯柠檬清理谁更优秀?
- 0基础C语言实战项目-贪吃蛇小游戏
- PHP获取一个网页内的图片_分享创造-使用PHP开发一键获取网页所有图片
- springboot-利用exmail服务器发送邮件
- 随机生成及检测8位密码:必须由大写字母、小写字母、数字和特殊符号共同组成
- 智慧药柜来了,能实现在线问诊无人自助购药
- Delphi与C++Builder代码共享的实现
- 2020年北京交通大学电子系统课程设计——病毒大作战方案记录
- vuecli4 启动_vuecli4 vant rem 移动端框架方案