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 相关文章推荐
JqGrid web打印实现代码
May 31 Javascript
腾讯UED 漂亮的提示信息效果代码
Sep 12 Javascript
jquery.form.js实现将form提交转为ajax方式提交的方法
Apr 07 Javascript
jQuery实现iframe父窗体和子窗体的相互调用
Jun 17 Javascript
js图片上传前预览功能(兼容所有浏览器)
Aug 24 Javascript
jQuery实现简单的网页换肤效果示例
Sep 18 Javascript
AngularJS入门教程之Helloworld示例
Dec 25 Javascript
Vue中android4.4不兼容问题的解决方法
Sep 04 Javascript
快速解决vue动态绑定多个class的官方实例语法无效的问题
Sep 05 Javascript
小程序兼容安卓和IOS数据处理问题及坑
Sep 18 Javascript
解决layui中onchange失效以及form动态渲染失效的问题
Sep 27 Javascript
前端vue-cli项目中使用img图片和background背景图的几种方法
Nov 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
自己做矿石收音机
2021/03/02 无线电
thinkphp实现like模糊查询实例
2014/10/29 PHP
PHP扩展mcrypt实现的AES加密功能示例
2019/01/29 PHP
多浏览器兼容的获取元素和鼠标的位置的js代码
2009/12/15 Javascript
js前台判断开始时间是否小于结束时间
2012/02/23 Javascript
js中onload与onunload的使用示例
2013/08/25 Javascript
简介JavaScript中strike()方法的使用
2015/06/08 Javascript
JS实现的网页背景闪电闪烁效果代码
2015/10/17 Javascript
Angularjs注入拦截器实现Loading效果
2015/12/28 Javascript
在Html中使用Requirejs进行模块化开发实例详解
2016/04/15 Javascript
微信小程序中单位rpx和rem的使用
2016/12/06 Javascript
详解jQuery中的DOM操作
2016/12/23 Javascript
bootstrap table操作技巧分享
2017/02/15 Javascript
详解Angular 4.x Injector
2017/05/04 Javascript
js实现HTML中Select二级联动的实例
2018/01/05 Javascript
详解js加减乘除精确计算
2019/03/19 Javascript
JS实现从对象获取对象中单个键值的方法示例
2019/06/05 Javascript
[01:43]3.19DOTA2发布会 三代刀塔人第三代
2014/03/25 DOTA
python使用matplotlib绘图时图例显示问题的解决
2017/04/27 Python
Python实现好友全头像的拼接实例(推荐)
2017/06/24 Python
关于Tensorflow中的tf.train.batch函数的使用
2018/04/24 Python
python使用response.read()接收json数据的实例
2018/12/19 Python
python读取图片任意范围区域
2019/01/23 Python
pytorch中tensor张量数据类型的转化方式
2019/12/31 Python
Django Haystack 全文检索与关键词高亮的实现
2020/02/17 Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
2020/02/17 Python
纯CSS实现设置半个字符的样式
2014/07/03 HTML / CSS
新东网科技Java笔试题
2012/07/13 面试题
建筑工程专业毕业生自荐信
2013/10/19 职场文书
大学生作弊检讨书
2014/09/11 职场文书
2014医学院领导班子对照检查材料思想汇报
2014/09/19 职场文书
法定授权委托证明书
2014/09/27 职场文书
债务纠纷起诉书
2015/05/20 职场文书
2019行政前台转正申请书范文3篇
2019/08/15 职场文书
opencv检测动态物体的实现
2021/07/21 Python
如何在python中实现ECDSA你知道吗
2021/11/23 Python