我是靠谱客的博主 成就水池,最近开发中收集的这篇文章主要介绍angular2实现统一的http请求头,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

//方案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请求头的全部内容,希望文章能够帮你解决angular2实现统一的http请求头所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部