vue axios登录请求拦截器


Posted in Javascript onApril 02, 2018

当我们在做接口请求时,比如判断登录超时时候,通常是接口返回一个特定的错误码,那如果我们每个接口都去判断一个耗时耗力,这个时候我们可以用拦截器去进行统一的http请求拦截。

1.安装配置axios

cnpm install --save axios 

我们可以建一个js文件来做这个统一的处理,新建一个axios.js,如下

import axios from 'axios' 
import { Indicator } from 'mint-ui'; 
import { Toast } from 'mint-ui'; 
// http request 拦截器 
axios.interceptors.request.use( 
  config => { 
    Indicator.open() 
    return config; 
  }, 
  err => { 
    Indicator.close() 
    return Promise.reject(err); 
  }); 
// http response 拦截器 
axios.interceptors.response.use( 
  response => { 
    Indicator.close() 
    return response; 
  }, 
  error => { 
    Indicator.close() 
  }); 
export default axios

然后在main.js中引入这个js文件

import axios from './axio'; 
Vue.prototype.$axios = axios;

这样就可以使用axios去请求了,在组件中可以用this.axios去调用

this.$axios({ 
    url:requestUrl+'homePage/v1/indexNewPropertiesResult', 
    method:'POST', 
   }).then(function(response){ //接口返回数据 
    console.log(response) 
    that.modulesArr=response.data.data.modules; 
//   that.getRecommendGoods(0); 
   });

只有用axios请求接口,才能去拦截,现在已经能在axios.js中拦截到了,可以在两个状态中做你需要的操作

补充:

axios使用拦截器统一处理所有的http请求

axios使用拦截器

在请求或响应被 then 或 catch 处理前拦截它们。

•http request拦截器

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么
  return config;
 }, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
 });

•http respones拦截器

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  return response;
 }, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error);
 });

•移除拦截器

var myInterceptor = axios.interceptors.request.use(function () {/*...*/});
axios.interceptors.request.eject(myInterceptor);

•为自定义axios实例添加拦截器

var instance = axios.create();
instance.interceptors.request.use(function () {/*...*/});

总结

以上所述是小编给大家介绍的vue axios登录请求拦截器,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Js 随机数产生6位数字
May 13 Javascript
定时器(setTimeout/setInterval)调用带参函数失效解决方法
Mar 26 Javascript
JS分页控件 可用于无刷新分页
Jul 23 Javascript
JS禁用浏览器退格键实现思路及代码
Oct 29 Javascript
jquery实现将获取的颜色值转换为十六进制形式的方法
Dec 20 Javascript
js实现缓冲运动效果的方法
Apr 10 Javascript
javascript字符串与数组转换汇总
May 26 Javascript
jQuery获取浏览器类型和版本号的方法
Jul 05 Javascript
webpack实现热更新(实施同步刷新)
Jul 28 Javascript
在Vue组件中使用 TypeScript的方法
Feb 28 Javascript
Vue 中使用富文本编译器wangEditor3的方法
Sep 26 Javascript
详解javascript void(0)
Jul 13 Javascript
webpack+react+antd脚手架优化的方法
Apr 02 #Javascript
vue axios请求超时的正确处理方法
Apr 02 #Javascript
JavaScript 日期时间选择器一些小结
Apr 02 #Javascript
vue计算属性及使用详解
Apr 02 #Javascript
vue小白入门教程
Apr 02 #Javascript
Angular父组件调用子组件的方法
Apr 02 #Javascript
微信小程序wx:for和wx:for-item的用法详解
Apr 01 #Javascript
You might like
PHP把JPEG图片转换成Progressive JPEG的方法
2014/06/30 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
2015/01/22 PHP
详解PHP中的null合并运算符
2015/12/30 PHP
phpcms配置列表页以及获得文章发布时间
2017/07/04 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
jQuery EasyUI 中文API Button使用实例
2010/04/14 Javascript
jQuery中ajax的load()方法用法实例
2014/12/26 Javascript
Vue.JS入门教程之事件监听
2016/12/01 Javascript
详解node中创建服务进程
2017/05/09 Javascript
jQuery中each循环的跳出和结束实例
2017/08/16 jQuery
mac中利用NVM管理不同node版本的方法详解
2017/11/08 Javascript
vscode 开发Vue项目的方法步骤
2018/11/25 Javascript
Vue实现点击显示不同图片的效果
2019/08/10 Javascript
微信小程序音乐播放器开发
2019/11/20 Javascript
vue商城中商品“筛选器”功能的实现代码
2020/07/01 Javascript
[20:30]职业巡回赛回顾
2018/08/09 DOTA
python通过ElementTree操作XML获取结点读取属性美化XML
2013/12/02 Python
Python采用raw_input读取输入值的方法
2014/08/18 Python
举例讲解Python程序与系统shell交互的方式
2015/04/09 Python
python使用turtle绘制国际象棋棋盘
2019/05/23 Python
Pytorch Tensor 输出为txt和mat格式方式
2020/01/03 Python
python seaborn heatmap可视化相关性矩阵实例
2020/06/03 Python
pycharm专业版远程登录服务器的详细教程
2020/09/15 Python
Python第三方库安装缓慢的解决方法
2021/02/06 Python
纯css3实现照片墙效果
2014/12/26 HTML / CSS
自定义html标记替换html5新增元素
2008/10/17 HTML / CSS
1688平价精选商城:阿里集团旗下,工厂出厂价格直销
2017/04/24 全球购物
BLACKMORES澳洲官网:澳大利亚排名第一的保健品牌
2018/09/27 全球购物
美国班级戒指、帽子和礼服、毕业产品、年鉴:Balfour
2018/11/01 全球购物
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
2016/02/10 面试题
2014员工聘用协议书(最新版)
2014/11/24 职场文书
先进工作者事迹材料
2014/12/23 职场文书
学习型家庭事迹材料(2016精选版)
2016/02/29 职场文书
2019年度开业庆典祝福语大全!
2019/07/05 职场文书
你真的了解redis为什么要提供pipeline功能
2021/06/22 Redis
Flink 侧流输出源码示例解析
2022/09/23 Servers