最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
angular2实现统一的http请求头方法
时间:2022-06-25 15:48:16 编辑:袖梨 来源:一聚教程网
如下所示:
//方案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{ 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] };
相关文章
- 王者荣耀侦探能力大测试攻略 王者荣耀侦探能力大测试怎么过 11-22
- 无期迷途主线前瞻兑换码是什么 11-22
- 原神欧洛伦怎么培养 11-22
- 炉石传说网易云音乐联动怎么玩 11-22
- 永劫无间手游确幸转盘怎么样 11-22
- 无期迷途主线前瞻兑换码是什么 无期迷途主线前瞻直播兑换码介绍 11-22