angular 用拦截器统一处理http请求和响应的方法


Posted in Javascript onJune 08, 2017

想使用angularjs里的htpp向后台发送请求,现在有个用户唯一识别的token想要放到headers里面去,也就是{headres:{'token':1}}

index.html里引入以下js:

angular.module('app.factorys',[])
  .factory('httpInterceptor',['$q','$injector','$localStorage',function ($q,$injector,$localStorage) {
    var httpInterceptor = {
      'responseError' : function(response) {
        // ......
        return $q.reject(response);
      },
      'response' : function(response) {
        if (response.status == 21000) {
          // console.log('do something...');
        }
        return response || $q.when(response);
      },
      'request' : function(config) {
        config.headers = config.headers || {};
        if ($localStorage.token) {
          config.headers.token = $localStorage.token;
          // config.headers['X-Access-Token'] = $localStorage.token;
        };

        return config || $q.when(config);

        return config;
      },
      'requestError' : function(config){
        // ......
        return $q.reject(config);
      }
    };
    return httpInterceptor;
  }])

在app里注入factory后,在config里面配置

.config(['$httpProvider',function(){
  $httpProvider.interceptors.push(httpInterceptor);
}])

以上这篇angular 用拦截器统一处理http请求和响应的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js中将HTMLCollection/NodeList/伪数组转换成数组的代码
Jul 31 Javascript
js运动框架_包括图片的淡入淡出效果
May 11 Javascript
Function.prototype.bind用法示例
Sep 16 Javascript
jQuery选择id属性带有点符号元素的方法
Mar 17 Javascript
Position属性之relative用法
Dec 14 Javascript
AngularJS extend用法详解及实例代码
Nov 15 Javascript
jquery实现文字单行横移或翻转(上下、左右跳转)
Jan 08 Javascript
vue.js element-ui tree树形控件改iview的方法
Mar 29 Javascript
node.js利用socket.io实现多人在线匹配联机五子棋
May 31 Javascript
vue返回上一页面时回到原先滚动的位置的方法
Dec 20 Javascript
jQuery实现查看图片功能
Dec 01 jQuery
JavaScript数组 几个常用方法总结
Nov 11 Javascript
jQuery 添加样式属性的优先级别方法(推荐)
Jun 08 #jQuery
Ionic项目中Native Camera的使用方法
Jun 07 #Javascript
详解angular ui-grid之过滤器设置
Jun 07 #Javascript
微信小程序 地图map实例详解
Jun 07 #Javascript
微信小程序 http请求的session管理
Jun 07 #Javascript
Ionic2开发环境搭建教程
Aug 20 #Javascript
微信小程序Redux绑定实例详解
Jun 07 #Javascript
You might like
PHP字符编码问题之GB2312 VS UTF-8解决方法
2011/06/23 PHP
PHP递归的三种常用方式
2019/02/28 PHP
JQuery live函数
2010/12/24 Javascript
浅谈Javascript面向对象编程
2011/11/15 Javascript
javascript:void(0)是什么意思示例介绍
2013/11/17 Javascript
js解决弹窗问题实现班级跳转DIV示例
2014/01/06 Javascript
JS实现div居中示例
2014/04/17 Javascript
jquery缓动swing liner控制动画过程不同时刻的速度
2014/05/29 Javascript
angularjs中的单元测试实例
2014/12/06 Javascript
JavaScript使用Max函数返回两个数字中较大数的方法
2015/04/06 Javascript
Bootstrap组件(一)之菜单
2016/05/11 Javascript
vue实现点击图片放大效果
2017/08/15 Javascript
Angular中管道操作符(|)的使用方法
2017/12/15 Javascript
React BootStrap用户体验框架快速上手
2018/03/06 Javascript
Javascript Promise用法详解
2018/05/10 Javascript
Vuex的基本概念、项目搭建以及入坑点
2018/11/04 Javascript
vue接入腾讯防水墙代码
2019/05/07 Javascript
python计算书页码的统计数字问题实例
2014/09/26 Python
Python入门篇之列表和元组
2014/10/17 Python
python正则表达式中的括号匹配问题
2014/12/14 Python
浅析Python编写函数装饰器
2016/03/18 Python
详解Python中表达式i += x与i = i + x是否等价
2017/02/08 Python
详解Python 2.6 升级至 Python 2.7 的实践心得
2017/04/27 Python
Python 网页解析HTMLParse的实例详解
2017/08/10 Python
tensorflow实现softma识别MNIST
2018/03/12 Python
PyQt5每天必学之像素图控件QPixmap
2018/04/19 Python
Python OpenCV实现鼠标画框效果
2020/08/19 Python
Flask处理Web表单的实现方法
2021/01/31 Python
Wiggle中国:英国骑行、跑步、游泳 & 铁三运动装备专卖网店
2016/08/02 全球购物
毕业生自荐书
2014/02/02 职场文书
四风问题对照检查材料整改措施
2014/09/27 职场文书
高中生逃课检讨书
2014/10/10 职场文书
拾金不昧感谢信
2015/01/21 职场文书
使用Java去实现超市会员管理系统
2022/03/18 Java/Android
Python探索生命起源 matplotlib细胞自动机动画演示
2022/04/21 Python
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL