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 相关文章推荐
用javascript实现的图片马赛克后显示并切换加文字功能
Apr 21 Javascript
JavaScript格式化日期时间的方法和自定义格式化函数示例
Apr 04 Javascript
jQuery validate验证插件使用详解
May 11 Javascript
jquery validate表单验证插件
Sep 06 Javascript
JavaScript仿微博发布信息案例
Nov 16 Javascript
Bootstrap响应式表格详解
May 23 Javascript
Angularjs上传文件组件flowjs功能
Aug 07 Javascript
Node.js五大应用性能技巧小结(必须收藏)
Aug 09 Javascript
微信小程序人脸识别功能代码实例
May 07 Javascript
通过循环优化 JavaScript 程序
Jun 24 Javascript
vue自定义正在加载动画的例子
Nov 14 Javascript
JS运算符优先级与表达式示例详解
Sep 04 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
PHP多例模式介绍
2013/06/24 PHP
mysql_connect localhost和127.0.0.1的区别(网络层阐述)
2015/03/26 PHP
PHP实现简单实用的验证码类
2015/07/29 PHP
实例详解PHP中html word 互转的方法
2016/01/28 PHP
利用php抓取蜘蛛爬虫痕迹的示例代码
2016/09/30 PHP
php文件管理基本功能简单操作
2017/01/16 PHP
Thinkphp 框架扩展之数据库驱动常用方法小结
2020/04/23 PHP
一段实现页面上的图片延时加载的js代码
2010/02/11 Javascript
JavaScript 学习初步 入门教程
2010/03/25 Javascript
jQuery学习笔记 更改jQuery对象
2012/09/19 Javascript
基于jQuery.Validate验证库知识点的详解
2013/04/26 Javascript
jquery购物车实时结算特效实现思路
2013/09/23 Javascript
node.js中的fs.readdirSync方法使用说明
2014/12/17 Javascript
AngularJS基础学习笔记之指令
2015/05/10 Javascript
jquery实现拖动效果
2016/08/10 Javascript
JavaScript中如何使用cookie实现记住密码功能及cookie相关函数介绍
2016/11/10 Javascript
jQuery实现简单的滑动导航代码(移动端)
2017/05/22 jQuery
three.js中文文档学习之通过模块导入
2017/11/20 Javascript
详解webpack模块化管理和打包工具
2018/04/21 Javascript
浅谈vue父子组件怎么传值
2018/07/21 Javascript
小程序视频或音频自定义可拖拽进度条的示例代码
2018/09/30 Javascript
Vue+ElementUI项目使用webpack输出MPA的方法
2019/08/27 Javascript
微信小程序实现左侧滑动导航栏
2020/04/08 Javascript
零基础写python爬虫之爬虫的定义及URL构成
2014/11/04 Python
用Pygal绘制直方图代码示例
2017/12/07 Python
用python统计代码行的示例(包括空行和注释)
2018/07/24 Python
pytorch实现特殊的Module--Sqeuential三种写法
2020/01/15 Python
python合并多个excel文件的示例
2020/09/23 Python
详解Canvas事件绑定
2018/06/27 HTML / CSS
HTML5 CSS3打造相册效果附源码下载
2014/06/16 HTML / CSS
旅行社各个岗位职责
2014/03/15 职场文书
质量标语大全
2014/06/12 职场文书
个人授权委托书格式
2014/08/30 职场文书
Python 中数组和数字相乘时的注意事项说明
2021/05/10 Python
python 爬取吉首大学网站成绩单
2021/06/02 Python
Go语言读取txt文档的操作方法
2022/01/22 Golang