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 相关文章推荐
Array.slice()与Array.splice()的返回值类型
Oct 09 Javascript
子页向父页传值示例
Nov 27 Javascript
javascript自定义函数参数传递为字符串格式
Jul 29 Javascript
基于canvas实现的钟摆效果完整实例
Jan 26 Javascript
WebApi+Bootstrap+KnockoutJs打造单页面程序
May 16 Javascript
使用JS正则表达式 替换括号,尖括号等
Nov 29 Javascript
canvas绘制的直线动画
Jan 23 Javascript
vue实现ToDoList简单实例
Feb 07 Javascript
yarn的使用与升级Node.js的方法详解
Jun 04 Javascript
基于jQuery实现的Ajax 验证用户名唯一性实例代码
Jun 28 jQuery
Three.js中网格对象MESH的属性与方法详解
Sep 27 Javascript
使用jQuery实现掷骰子游戏
Oct 24 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
PHP如何得到当前页和上一页的地址?
2006/11/27 PHP
分享一个Laravel好用的Cache宏
2015/03/02 PHP
Laravel 5框架学习之模型、控制器、视图基础流程
2015/04/08 PHP
List all the Databases on a SQL Server
2007/06/21 Javascript
读jQuery之一(对象的组成)
2011/06/11 Javascript
Jquery实现图片放大镜效果的思路及代码(自写)
2013/10/18 Javascript
jquery选择器之基本过滤选择器详解
2014/01/27 Javascript
javascript跨域原因以及解决方案分享
2015/04/08 Javascript
Jquery 1.9.1源码分析系列(十二)之筛选操作
2015/12/02 Javascript
JavaScript类型系统之基本数据类型与包装类型
2016/01/06 Javascript
ionic在开发ios系统微信时键盘挡住输入框的解决方法(键盘弹出问题)
2016/09/06 Javascript
jQuery判断是否存在滚动条的简单方法
2016/09/17 Javascript
微信小程序 Windows2008 R2服务器配置TLS1.2方法
2016/12/05 Javascript
Nodejs中crypto模块的安全知识讲解
2018/01/03 NodeJs
用jquery获取select标签中选中的option值及文本的示例
2018/01/25 jQuery
使用vuex的state状态对象的5种方式
2018/04/19 Javascript
Vue+Koa2+mongoose写一个像素绘板的实现方法
2019/09/10 Javascript
Vue中通过vue-router实现命名视图的问题
2020/04/23 Javascript
JavaScript异步操作的几种常见处理方法实例总结
2020/05/11 Javascript
原生js实现拖拽移动与缩放效果
2020/08/24 Javascript
[01:52]深扒TI7聊天轮盘语音出处7
2017/05/11 DOTA
Python内置函数bin() oct()等实现进制转换
2012/12/30 Python
详解 Python 与文件对象共事的实例
2017/09/11 Python
详解Python在七牛云平台的应用(一)
2017/12/05 Python
pandas表连接 索引上的合并方法
2018/06/08 Python
Python 处理图片像素点的实例
2019/01/08 Python
Django JWT Token RestfulAPI用户认证详解
2019/01/23 Python
python实现XML解析的方法解析
2019/11/16 Python
Python openpyxl模块原理及用法解析
2020/01/19 Python
Python是什么 Python的用处
2020/05/26 Python
英国最大的在线照明商店:Litecraft
2020/08/31 全球购物
合作意向书格式及范文
2014/03/31 职场文书
会计学毕业生求职信
2014/06/25 职场文书
高一作文之乐趣
2019/11/21 职场文书
详解使用内网穿透工具Ngrok代理本地服务
2022/03/31 Servers
Python 匹配文本并在其上一行追加文本
2022/05/11 Python