最新下载
热门教程
- 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]
};
相关文章
- 哔哩哔哩官网网页版官方入口-哔哩哔哩网页版直播互动专区 12-16
- 魔兽世界怀旧服Plus灰谷战场声望最新速刷方法 12-16
- 蛋仔派对云游戏秒玩入口-2026全新蛋仔派对网页版即点即玩地址汇总 12-16
- 魔兽世界怀旧服Plus战歌峡谷声望速刷攻略 12-16
- 番茄小说免费版畅读入口-番茄小说免费版极速轻量阅读入口 12-16
- 魔兽世界怀旧服Plus银翼要塞声望速刷攻略 12-16