angular2实现统一的http请求头方法


Posted in Javascript onAugust 13, 2018

如下所示:

//方案1:能用,但token信息不能写在服务中,应该用全局变量替代,而且还得考虑参数复合问题。
@Injectable()
export class DefaultRequestOptions extends BaseRequestOptions {
  constructor() {
  super();
  this.headers.set('Content-Type', 'application/json');
 }
}
export const requestOptionProvider = {provide: RequestOptions, useClass: DefaultRequestOptions};
//方案2:能用,比较正规的实现,但以后请求就只能用myHttp对象了,而且还要考虑参数复合问题。
export class myHttp extends Http {
 defaultHeaders = new Headers({
  'Content-Type': 'application/json'
 });

 constructor(_backend: ConnectionBackend, _defaultOptions: RequestOptions, private appInitService: AppInitService) {
  super(_backend, _defaultOptions);
 }

 get(url: string, options?: RequestOptionsArgs): Observable<Response> {
  let optionBuf = new RequestOptions({
   headers: this.defaultHeaders,
   params: {'token': this.appInitService.token}
  });
  //here extend options;
  return super.get(url, optionBuf);
 }
}

export function myHttpFactory(xhrBackend: XHRBackend, requestOptions: RequestOptions, appInitService: AppInitService): myHttp {
 return new myHttp(xhrBackend, requestOptions, appInitService); // 创建myHttp对象
}

export const myHttpProvider = {
 provide: myHttp,
 useFactory: myHttpFactory,
 deps: [XHRBackend, RequestOptions, AppInitService]
};

以上这篇angular2实现统一的http请求头方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery提取元素里的纯文本不包含span等里的内容
Sep 30 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
Jan 26 Javascript
JavaScript中对循环语句的优化技巧深入探讨
Jun 06 Javascript
js类定义函数时用prototype与不用的区别示例介绍
Jun 10 Javascript
在JS数组特定索引处指定位置插入元素
Jul 27 Javascript
详解JavaScript中jQuery和Ajax以及JSONP的联合使用
Aug 13 Javascript
jQuery基于ajax()使用serialize()提交form数据的方法
Dec 08 Javascript
javascript基本语法
May 31 Javascript
Jquery组件easyUi实现表单验证示例
Aug 23 Javascript
Node.js 日志处理模块log4js
Aug 28 Javascript
vue的全局提示框组件实例代码
Feb 26 Javascript
koa socket即时通讯的示例代码
Sep 07 Javascript
AngularJS发送异步Get/Post请求方法
Aug 13 #Javascript
vue后台管理之动态加载路由的方法
Aug 13 #Javascript
jQuery中$原理实例分析
Aug 13 #jQuery
Angular服务Request异步请求的实例讲解
Aug 13 #Javascript
微信小程序中使用wxss加载图片并实现动画效果
Aug 13 #Javascript
深入浅析angular和vue还有jquery的区别
Aug 13 #jQuery
Angular异步变同步处理方法
Aug 13 #Javascript
You might like
smarty 原来也不过如此~~呵呵
2006/11/25 PHP
从网上搜到的phpwind 0day的代码
2006/12/07 PHP
PHP生成UTF8文件的方法
2010/05/15 PHP
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
2014/05/12 PHP
PHP模拟post提交数据方法汇总
2016/02/16 PHP
JavaScript 在线压缩和格式化收藏
2009/01/16 Javascript
目前流行的JavaScript库的介绍及对比
2013/09/29 Javascript
js中settimeout方法加参数的使用实例
2014/02/27 Javascript
jQuery实现的在线答题功能
2015/04/12 Javascript
JS实现鼠标滑过链接改变网页背景颜色的方法
2015/10/20 Javascript
jQuery中的通配符选择器使用总结
2016/05/30 Javascript
jquery滚动条插件(可以自定义)
2016/12/11 Javascript
深入理解vue $refs的基本用法
2017/07/13 Javascript
浅谈vue-router2路由参数注意的问题
2017/11/08 Javascript
vue 添加vux的代码讲解
2017/11/30 Javascript
详谈vue+webpack解决css引用图片打包后找不到资源文件的问题
2018/03/06 Javascript
JavaScript原型链与继承操作实例总结
2018/08/24 Javascript
layui 数据表格 点击分页按钮 监听事件的实例
2019/09/02 Javascript
[56:20]LGD vs VP Supermajor 败者组决赛 BO3 第三场 6.10
2018/07/04 DOTA
[01:16:28]DOTA2-DPC中国联赛 正赛 iG vs Magma BO3 第二场 2月23日
2021/03/11 DOTA
django 自定义用户user模型的三种方法
2014/11/18 Python
Python和GO语言实现的消息摘要算法示例
2015/03/10 Python
编写Python CGI脚本的教程
2015/06/29 Python
python算法表示概念扫盲教程
2017/04/13 Python
Python学习笔记之open()函数打开文件路径报错问题
2018/04/28 Python
Python实现自动打开电脑应用的示例代码
2020/04/17 Python
html5给汉字加拼音加进度条的实现代码
2020/04/07 HTML / CSS
美国潜水装备、水肺潜水和浮潜设备商店:Leisure Pro
2018/08/08 全球购物
美国在线奢侈品寄售商店:Luxury Garage Sale
2018/08/19 全球购物
创建绿色学校先进个人材料
2014/08/20 职场文书
协议书范文
2015/01/27 职场文书
请客吃饭开场白
2015/06/01 职场文书
农村老人去世追悼词
2015/06/23 职场文书
2015高中教师个人工作总结
2015/07/21 职场文书
Win11安全功能升级:内置防网络钓鱼功能
2022/04/08 数码科技