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拦截器的使用相关推荐

  1. dio拦截器 flutter_Flutter 中 Dio 拦截器

    有时我们不需要复杂的应用程序,只需要显示一个数据列表的简单功能,我们可以通过一个简单的方法来实现: Future fetchItems() { return Dio().("https:// ...

  2. python装饰器 property_Python中@property装饰器的使用技巧性解析(代码示例)

    Python中@property装饰器的技巧性用法(代码示例) 本篇文章给大家带来的内容是关于Python中@property装饰器的技巧性用法(代码示例),有一定的参考价值,有需要的朋友可以参考一下 ...

  3. python装饰器-python中的装饰器常用于哪些应用场景

    最新回答 2019-12-08回答 所谓装饰器就是把函数包装一下,为函数添加一些附加功能,装饰器就是一个函数,参数为被包装的函数,返回包装后的函数:你可以试下: de d(p): de _d(*arg ...

  4. python重写和装饰器_python中的装饰器

    装饰器的本质: 当你在用某个@decorator来修饰某个函数func时,如下所示: @decorator def func(): pass 其解释器会解释成下面这样的语句: func=decorat ...

  5. maya阿诺德渲染失败_maya2018无法加载ARNOLD渲染器?maya2018中ARNOLD渲染器加载不了怎么办?...

    maya2018无法加载ARNOLD渲染器可通过以下方法解决. 1.首先右键点击我的电脑并选择属性. 2.然后点击高级系统设置,打开系统属性面板. 3.打开系统属性面板之后在高级选项卡下点击环境变量. ...

  6. java中什么是布局管理器_Java中布局管理器

    布局管理器种类 FlowLayout: 组件在一行中从左至右水平排列,排满后折行,它是Panel.Applet的默认布局管理器. BorderLayout:北.南.东.西.中,它是Window.Fra ...

  7. java访问器_Java中的访问器方法

    因此,我对" setter"和" getter"方法以及它们的有用与否有疑问. 假设我只是写了一个非常基本的程序,如下所示: public class Acco ...

  8. python中修饰器_python 中的修饰器

    参考文章 @property和@ .setter的用法: @property 把属性装饰成get方法 给属性赋值时,会自动调用@property装饰的方法 只设置属性的@property 时,属性为只 ...

  9. SpringMVC中的拦截器

    SpringMVC中的拦截器 拦截器的作用 Spring MVC 的处理器拦截器类似于 Servlet 开发中的过滤器 Filter,用于对处理器进行预处理和后处理. 用户可以自己定义一些拦截器来实现 ...

最新文章

  1. 配置zendframework开始工作(加入环境变量)
  2. 不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧
  3. 微信小程序开发文档链接
  4. 从纸钱包,带你走进贴心的BCH!
  5. esp32 rtc 时钟设置不对_咱们RTC时钟案例的时间为什么开始的时候总是2014年,怎么改呢?...
  6. github随时同步代码_GitHub代码下载和同步
  7. svn服务器地址更改
  8. cocos2d-x中使用Http
  9. 已知圆心 坐标和一点坐标和角度 就之后的坐标_LaTeX 中绘制多个相交椭圆(对起始角度与终止角度的思考)...
  10. 人工智能-基于规则的专家系统(基础知识)
  11. winform textbox文本框根据内容自动调整高度
  12. YML解析框架SnakeYaml简介
  13. MTCNN优化和另类用法
  14. 指针(一)(基本概念)
  15. HTML5 颜色及透明度
  16. try、catch、finally 用法总结
  17. 金色新版萝卜影视系统源码+影视系统APP源码
  18. BUUCTF-MISC-九连环
  19. 苹果手机计算机有哪些功能,苹果iPhone手机问答:iPhone计算器原来这么好用 神奇功能汇总...
  20. vbscript 学习笔记

热门文章

  1. 两张图教会你编程学习哪些东西
  2. 老牌vs大牌!CleanMyMac X和腾讯柠檬清理谁更优秀?
  3. 0基础C语言实战项目-贪吃蛇小游戏
  4. PHP获取一个网页内的图片_分享创造-使用PHP开发一键获取网页所有图片
  5. springboot-利用exmail服务器发送邮件
  6. 随机生成及检测8位密码:必须由大写字母、小写字母、数字和特殊符号共同组成
  7. 智慧药柜来了,能实现在线问诊无人自助购药
  8. Delphi与C++Builder代码共享的实现
  9. 2020年北京交通大学电子系统课程设计——病毒大作战方案记录
  10. vuecli4 启动_vuecli4 vant rem 移动端框架方案