mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
Ordinarily, providing `HttpClient` (either via `provideHttpClient` or the `HttpClientModule`) creates an entirely separate HTTP context. Requests made via that client are not passed through the interceptor chains that are configured in a parent injector, for this example. This commit introduces a new option for `provideHttpClient` called `withRequestsMadeViaParent()`. When this option is passed, requests made in the child context flow through any injectors, etc. and are then handed off to the parent context. This addresses a longstanding issue with interceptors where it's not possible to extend the set of interceptors in a child context without repeating all of the interceptors from the parent. PR Close #47502
45 lines
2.1 KiB
TypeScript
45 lines
2.1 KiB
TypeScript
/**
|
|
* @license
|
|
* Copyright Google LLC All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.io/license
|
|
*/
|
|
|
|
import {XhrFactory as XhrFactory_fromAngularCommon} from '@angular/common';
|
|
|
|
/**
|
|
* A wrapper around the `XMLHttpRequest` constructor.
|
|
*
|
|
* @publicApi
|
|
* @see `XhrFactory`
|
|
* @deprecated
|
|
* `XhrFactory` has moved, please import `XhrFactory` from `@angular/common` instead.
|
|
*/
|
|
export type XhrFactory = XhrFactory_fromAngularCommon;
|
|
/**
|
|
* A wrapper around the `XMLHttpRequest` constructor.
|
|
*
|
|
* @publicApi
|
|
* @see `XhrFactory`
|
|
* @deprecated
|
|
* `XhrFactory` has moved, please import `XhrFactory` from `@angular/common` instead.
|
|
*/
|
|
export const XhrFactory = XhrFactory_fromAngularCommon;
|
|
|
|
export {HttpBackend, HttpHandler} from './src/backend';
|
|
export {HttpClient} from './src/client';
|
|
export {HttpContext, HttpContextToken} from './src/context';
|
|
export {HttpHeaders} from './src/headers';
|
|
export {HTTP_INTERCEPTORS, HttpInterceptor, HttpInterceptorHandler as ɵHttpInterceptorHandler, HttpInterceptorFn, HttpHandlerFn} from './src/interceptor';
|
|
export {JsonpClientBackend, JsonpInterceptor} from './src/jsonp';
|
|
export {HttpClientJsonpModule, HttpClientModule, HttpClientXsrfModule} from './src/module';
|
|
export {HttpParameterCodec, HttpParams, HttpParamsOptions, HttpUrlEncodingCodec} from './src/params';
|
|
export {HttpFeature, HttpFeatureKind, provideHttpClient, withJsonpSupport, withLegacyInterceptors, withNoXsrfProtection, withXsrfConfiguration, withInterceptors, withRequestsMadeViaParent} from './src/provider';
|
|
export {HttpRequest} from './src/request';
|
|
export {HttpDownloadProgressEvent, HttpErrorResponse, HttpEvent, HttpEventType, HttpHeaderResponse, HttpProgressEvent, HttpResponse, HttpResponseBase, HttpSentEvent, HttpStatusCode, HttpUploadProgressEvent, HttpUserEvent} from './src/response';
|
|
export {HttpXhrBackend} from './src/xhr';
|
|
export {HttpXsrfTokenExtractor} from './src/xsrf';
|
|
|
|
// This re-export exists because g3 depends on this old private name.
|
|
export {HttpInterceptorHandler as ɵHttpInterceptingHandler} from './src/interceptor';
|