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 相关文章推荐
学习js所必须要知道的一些
Mar 07 Javascript
代码精简的可以实现元素圆角的js函数
Jul 21 Javascript
初学js 新节点的创建 删除 的步骤
Jul 04 Javascript
打印json对象的内容及JSON.stringify函数应用
Mar 29 Javascript
Javascript 实现复制(Copy)动作方法大全
Jun 20 Javascript
jQuery获取标签文本内容和html内容的方法
Mar 27 Javascript
使用jQuery的easydrag插件实现可拖动的DIV弹出框
Feb 19 Javascript
JS定时器使用,定时定点,固定时刻,循环执行详解
May 31 Javascript
Vue调试神器vue-devtools安装方法
Dec 12 Javascript
React中使用async validator进行表单验证的实例代码
Aug 17 Javascript
layui-laydate时间日历控件使用方法详解
Nov 15 Javascript
jQuery使用bind动态绑定事件无效的处理方法
Dec 11 jQuery
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
Windows Apache2.2.11及Php5.2.9-1的安装与配置方法
2009/06/08 PHP
php设计模式 Command(命令模式)
2011/06/26 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
2015/05/21 PHP
jquery获取多个checkbox的值异步提交给php的方法
2015/06/24 PHP
PHP测试成功的邮件发送案例
2015/10/26 PHP
php实现三级级联下拉框
2016/04/17 PHP
Jquery getJSON方法详细分析
2013/12/26 Javascript
javascript判断office版本示例
2014/04/11 Javascript
JS实现文件动态顺序载入的方法
2015/03/07 Javascript
微信小程序进行微信支付的步骤昂述
2016/12/01 Javascript
Javascript前端经典的面试题及答案
2017/03/14 Javascript
关于jquery form表单序列化的注意事项详解
2017/08/01 jQuery
微信小程序使用checkbox显示多项选择框功能【附源码下载】
2017/12/11 Javascript
浅谈Vue内置component组件的应用场景
2018/03/27 Javascript
详解ajax的data参数错误导致页面崩溃
2018/04/30 Javascript
JavaScript实现单英文金山打字通
2020/07/24 Javascript
vuex实现数据状态持久化
2019/11/11 Javascript
微信小程序中网络请求缓存的解决方法
2019/12/29 Javascript
用Python写脚本,实现完全备份和增量备份的示例
2018/04/29 Python
将tensorflow.Variable中的某些元素取出组成一个新的矩阵示例
2020/01/04 Python
Python爬虫工具requests-html使用解析
2020/04/29 Python
Python使用Selenium实现淘宝抢单的流程分析
2020/06/23 Python
使用matplotlib的pyplot模块绘图的实现示例
2020/07/12 Python
CSS3属性选择符介绍
2008/10/17 HTML / CSS
Joules美国官网:出色的英国风格
2017/10/30 全球购物
巴西婴儿用品商店:Bebe Store
2017/11/23 全球购物
捷克钓鱼用品网上商店:Parys.cz
2018/06/15 全球购物
戴森英国官网:Dyson英国
2019/05/07 全球购物
加拿大在线眼镜零售商:SmartBuyGlasses加拿大
2019/05/25 全球购物
宠物店的创业计划书范文
2014/01/11 职场文书
办公室岗位职责
2014/02/12 职场文书
《美丽的南沙群岛》教学反思
2014/04/27 职场文书
人力资源职位说明书
2014/07/29 职场文书
迎国庆横幅标语
2014/10/08 职场文书
会计工作岗位职责
2015/02/03 职场文书
手把手教你用SpringBoot将文件打包成zip存放或导出
2021/06/11 Java/Android