用我們的類而不是 Angulars Http
在擴充套件 Http 類之後,我們需要告訴 angular 使用這個類而不是 Http 類。
為了做到這一點,在我們的主模組中(或根據需要,只是一個特定的模組),我們需要在提供者部分寫:
export function httpServiceFactory(xhrBackend: XHRBackend, requestOptions: RequestOptions, router: Router, appConfig: ApplicationConfiguration) {
return new HttpServiceLayer(xhrBackend, requestOptions, router, appConfig);
}
import { HttpModule, Http, Request, RequestOptionsArgs, Response, XHRBackend, RequestOptions, ConnectionBackend, Headers } from '@angular/http';
import { Router } from '@angular/router';
@NgModule({
declarations: [ ... ],
imports: [ ... ],
exports: [ ... ],
providers: [
ApplicationConfiguration,
{
provide: Http,
useFactory: httpServiceFactory,
deps: [XHRBackend, RequestOptions, Router, ApplicationConfiguration]
}
],
bootstrap: [AppComponent]
})
export class AppModule { }
注意:ApplicationConfiguration 只是我用來在應用程式持續時間內儲存一些值的服務