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 相关文章推荐
javascript实现的像java、c#之类的sleep暂停的函数代码
Mar 04 Javascript
jQuery中json对象的复制方式介绍(数组及对象)
Jun 08 Javascript
js 时间格式与时间戳的相互转换示例代码
Dec 25 Javascript
基于jquery的simpleValidate简易验证插件
Jan 31 Javascript
jQuery实现加入购物车飞入动画效果
Mar 14 Javascript
底部悬浮通栏可以关闭广告位的实现方法
Jun 01 Javascript
JS简单实现自定义右键菜单实例
May 31 Javascript
react路由配置方式详解
Aug 07 Javascript
通过jquery获取上传文件名称、类型和大小的实现代码
Apr 19 jQuery
JS基础之逻辑结构与循环操作示例
Jan 19 Javascript
openlayers实现地图测距测面
Sep 25 Javascript
详解TS数字分隔符和更严格的类属性检查
May 06 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+jquery编码方面的一些心得(utf-8 gb2312)
2010/10/12 PHP
深入Memcache的Session数据的多服务器共享详解
2013/06/13 PHP
ThinkPHP采用实现三级循环代码实例
2014/07/18 PHP
php实现求相对时间函数
2015/06/15 PHP
PHP获取远程http或ftp文件的md5值的方法
2019/04/15 PHP
PHP实现抽奖功能实例代码
2020/06/30 PHP
Javascript 圆角div的实现代码
2009/10/15 Javascript
基于jQuery的日期选择控件
2009/10/27 Javascript
JavaScript 拾漏补遗
2009/12/27 Javascript
jquery $.ajax()取xml数据的小问题解决方法
2010/11/20 Javascript
今天是星期几的4种JS代码写法
2013/09/17 Javascript
根据表格中的某一列进行排序的javascript代码
2013/11/29 Javascript
JS获取和修改元素样式的实例代码
2016/08/06 Javascript
JavaScript基本类型值-Undefined、Null、Boolean
2017/02/23 Javascript
Javascript实现base64的加密解密方法示例
2017/06/27 Javascript
nodejs的路径问题的解决
2018/06/30 NodeJs
webpack开发环境和生产环境的深入理解
2018/11/08 Javascript
nuxt+axios实现打包后动态修改请求地址的方法
2020/04/22 Javascript
js实现简单的贪吃蛇游戏
2020/04/23 Javascript
js代码编写无缝轮播图
2020/09/13 Javascript
解决idea开发遇到javascript动态添加html元素时中文乱码的问题
2020/09/29 Javascript
Python字符串通过'+'和join函数拼接新字符串的性能测试比较
2019/03/05 Python
python 设置xlabel,ylabel 坐标轴字体大小,字体类型
2019/07/23 Python
jupyter notebook 写代码自动补全的实现
2020/11/02 Python
pytorch加载语音类自定义数据集的方法教程
2020/11/10 Python
Ubuntu20下的Django安装的方法步骤
2021/01/24 Python
路易威登和香奈儿手袋:LuxeDH
2017/01/12 全球购物
意大利男装网店:Vrients
2019/05/02 全球购物
Java程序员面试题
2013/07/15 面试题
优秀教师主要事迹
2014/02/01 职场文书
收银员的岗位职责范本
2014/02/04 职场文书
2014年销售内勤工作总结
2014/12/01 职场文书
先进班集体事迹材料
2014/12/25 职场文书
护士实习自荐信
2015/03/06 职场文书
小学班主任心得体会
2016/01/07 职场文书
Anaconda安装pytorch及配置PyCharm 2021环境
2021/06/04 Python