Permalink
Browse files

feat: deprecate @angular/http in favor of @angular/common/http (#18906)

As of 5.0, @angular/http is deprecated. @angular/common/http will
be the official HTTP API in Angular going forward.

PR Close #18906
  • Loading branch information...
alxhub authored and mhevery committed Aug 28, 2017
1 parent 1ef558b commit 72c7b6edea39f6591463c2a22eb24d087fd756b7
Showing with 136 additions and 136 deletions.
  1. +2 −2 packages/common/http/src/backend.ts
  2. +2 −2 packages/common/http/src/client.ts
  3. +1 −1 packages/common/http/src/headers.ts
  4. +3 −3 packages/common/http/src/interceptor.ts
  5. +3 −3 packages/common/http/src/jsonp.ts
  6. +5 −5 packages/common/http/src/module.ts
  7. +3 −3 packages/common/http/src/params.ts
  8. +1 −1 packages/common/http/src/request.ts
  9. +12 −12 packages/common/http/src/response.ts
  10. +3 −3 packages/common/http/src/xhr.ts
  11. +1 −1 packages/common/http/src/xsrf.ts
  12. +2 −2 packages/common/http/testing/src/api.ts
  13. +1 −1 packages/common/http/testing/src/backend.ts
  14. +1 −1 packages/common/http/testing/src/module.ts
  15. +1 −1 packages/common/http/testing/src/request.ts
  16. +1 −1 packages/http/src/backends/browser_xhr.ts
  17. +2 −2 packages/http/src/backends/jsonp_backend.ts
  18. +3 −3 packages/http/src/backends/xhr_backend.ts
  19. +2 −2 packages/http/src/base_request_options.ts
  20. +2 −2 packages/http/src/base_response_options.ts
  21. +5 −5 packages/http/src/enums.ts
  22. +1 −1 packages/http/src/headers.ts
  23. +2 −2 packages/http/src/http.ts
  24. +2 −2 packages/http/src/http_module.ts
  25. +5 −5 packages/http/src/interfaces.ts
  26. +1 −1 packages/http/src/static_request.ts
  27. +1 −1 packages/http/src/static_response.ts
  28. +2 −2 packages/http/src/url_search_params.ts
  29. +1 −1 packages/http/src/version.ts
  30. +2 −2 packages/http/testing/src/mock_backend.ts
  31. +28 −28 tools/public_api_guard/common/http.d.ts
  32. +4 −4 tools/public_api_guard/common/http/testing.d.ts
  33. +29 −29 tools/public_api_guard/http/http.d.ts
  34. +2 −2 tools/public_api_guard/http/testing.d.ts
@@ -20,7 +20,7 @@ import {HttpEvent} from './response';
*
* In an `HttpInterceptor`, the `HttpHandler` parameter is the next interceptor in the chain.
*
* @experimental
* @stable
*/
export abstract class HttpHandler {
abstract handle(req: HttpRequest<any>): Observable<HttpEvent<any>>;
@@ -34,7 +34,7 @@ export abstract class HttpHandler {
* When injected, `HttpBackend` dispatches requests directly to the backend, without going
* through the interceptor chain.
*
* @experimental
* @stable
*/
export abstract class HttpBackend implements HttpHandler {
abstract handle(req: HttpRequest<any>): Observable<HttpEvent<any>>;
@@ -46,7 +46,7 @@ function addBody<T>(
}
/**
* @experimental
* @stable
*/
export type HttpObserve = 'body' | 'events' | 'response';
@@ -57,7 +57,7 @@ export type HttpObserve = 'body' | 'events' | 'response';
* Each request method has multiple signatures, and the return type varies according to which
* signature is called (mainly the values of `observe` and `responseType`).
*
* @experimental
* @stable
*/
@Injectable()
export class HttpClient {
@@ -14,7 +14,7 @@ interface Update {
/**
* Immutable set of Http headers, with lazy parsing.
* @experimental
* @stable
*/
export class HttpHeaders {
/**
@@ -22,7 +22,7 @@ import {HttpEvent} from './response';
* In rare cases, interceptors may wish to completely handle a request themselves,
* and not delegate to the remainder of the chain. This behavior is allowed.
*
* @experimental
* @stable
*/
export interface HttpInterceptor {
/**
@@ -47,7 +47,7 @@ export interface HttpInterceptor {
/**
* `HttpHandler` which applies an `HttpInterceptor` to an `HttpRequest`.
*
* @experimental
* @stable
*/
export class HttpInterceptorHandler implements HttpHandler {
constructor(private next: HttpHandler, private interceptor: HttpInterceptor) {}
@@ -61,7 +61,7 @@ export class HttpInterceptorHandler implements HttpHandler {
* A multi-provider token which represents the array of `HttpInterceptor`s that
* are registered.
*
* @experimental
* @stable
*/
export const HTTP_INTERCEPTORS = new InjectionToken<HttpInterceptor[]>('HTTP_INTERCEPTORS');
@@ -35,15 +35,15 @@ export const JSONP_ERR_WRONG_RESPONSE_TYPE = 'JSONP requests must use Json respo
*
* In the browser, this should always be the `window` object.
*
* @experimental
* @stable
*/
export abstract class JsonpCallbackContext { [key: string]: (data: any) => void; }
/**
* `HttpBackend` that only processes `HttpRequest` with the JSONP method,
* by performing JSONP style requests.
*
* @experimental
* @stable
*/
@Injectable()
export class JsonpClientBackend implements HttpBackend {
@@ -207,7 +207,7 @@ export class JsonpClientBackend implements HttpBackend {
* An `HttpInterceptor` which identifies requests with the method JSONP and
* shifts them to the `JsonpClientBackend`.
*
* @experimental
* @stable
*/
@Injectable()
export class JsonpInterceptor {
@@ -23,7 +23,7 @@ import {HttpXsrfCookieExtractor, HttpXsrfInterceptor, HttpXsrfTokenExtractor, XS
*
* Meant to be used as a factory function within `HttpClientModule`.
*
* @experimental
* @stable
*/
export function interceptingHandler(
backend: HttpBackend, interceptors: HttpInterceptor[] | null = []): HttpHandler {
@@ -40,7 +40,7 @@ export function interceptingHandler(
* Ordinarily JSONP callbacks are stored on the `window` object, but this may not exist
* in test environments. In that case, callbacks are stored on an anonymous object instead.
*
* @experimental
* @stable
*/
export function jsonpCallbackContext(): Object {
if (typeof window === 'object') {
@@ -59,7 +59,7 @@ export function jsonpCallbackContext(): Object {
* If no such names are provided, the default is to use `X-XSRF-TOKEN` for
* the header name and `XSRF-TOKEN` for the cookie name.
*
* @experimental
* @stable
*/
@NgModule({
providers: [
@@ -107,7 +107,7 @@ export class HttpClientXsrfModule {
* Interceptors can be added to the chain behind `HttpClient` by binding them
* to the multiprovider for `HTTP_INTERCEPTORS`.
*
* @experimental
* @stable
*/
@NgModule({
imports: [
@@ -140,7 +140,7 @@ export class HttpClientModule {
* Without this module, Jsonp requests will reach the backend
* with method JSONP, where they'll be rejected.
*
* @experimental
* @stable
*/
@NgModule({
providers: [
@@ -11,7 +11,7 @@
*
* Used by `HttpParams`.
*
* @experimental
* @stable
**/
export interface HttpParameterCodec {
encodeKey(key: string): string;
@@ -25,7 +25,7 @@ export interface HttpParameterCodec {
* A `HttpParameterCodec` that uses `encodeURIComponent` and `decodeURIComponent` to
* serialize and parse URL parameter keys and values.
*
* @experimental
* @stable
*/
export class HttpUrlEncodingCodec implements HttpParameterCodec {
encodeKey(k: string): string { return standardEncoding(k); }
@@ -79,7 +79,7 @@ interface Update {
*
* This class is immutable - all mutation operations return a new instance.
*
* @experimental
* @stable
*/
export class HttpParams {
private map: Map<string, string[]>|null;
@@ -73,7 +73,7 @@ function isFormData(value: any): value is FormData {
* assumed to be immutable. To modify a `HttpRequest`, the `clone`
* method should be used.
*
* @experimental
* @stable
*/
export class HttpRequest<T> {
/**
@@ -11,7 +11,7 @@ import {HttpHeaders} from './headers';
/**
* Type enumeration for the different kinds of `HttpEvent`.
*
* @experimental
* @stable
*/
export enum HttpEventType {
/**
@@ -48,7 +48,7 @@ export enum HttpEventType {
/**
* Base interface for progress events.
*
* @experimental
* @stable
*/
export interface HttpProgressEvent {
/**
@@ -71,7 +71,7 @@ export interface HttpProgressEvent {
/**
* A download progress event.
*
* @experimental
* @stable
*/
export interface HttpDownloadProgressEvent extends HttpProgressEvent {
type: HttpEventType.DownloadProgress;
@@ -87,7 +87,7 @@ export interface HttpDownloadProgressEvent extends HttpProgressEvent {
/**
* An upload progress event.
*
* @experimental
* @stable
*/
export interface HttpUploadProgressEvent extends HttpProgressEvent {
type: HttpEventType.UploadProgress;
@@ -98,7 +98,7 @@ export interface HttpUploadProgressEvent extends HttpProgressEvent {
* when a request may be retried multiple times, to distinguish between
* retries on the final event stream.
*
* @experimental
* @stable
*/
export interface HttpSentEvent { type: HttpEventType.Sent; }
@@ -108,7 +108,7 @@ export interface HttpSentEvent { type: HttpEventType.Sent; }
* Grouping all custom events under this type ensures they will be handled
* and forwarded by all implementations of interceptors.
*
* @experimental
* @stable
*/
export interface HttpUserEvent<T> { type: HttpEventType.User; }
@@ -118,7 +118,7 @@ export interface HttpUserEvent<T> { type: HttpEventType.User; }
*
* It bundles the Error object with the actual response body that failed to parse.
*
* @experimental
* @stable
*/
export interface HttpJsonParseError {
error: Error;
@@ -130,15 +130,15 @@ export interface HttpJsonParseError {
*
* Typed according to the expected type of the response.
*
* @experimental
* @stable
*/
export type HttpEvent<T> =
HttpSentEvent | HttpHeaderResponse | HttpResponse<T>| HttpProgressEvent | HttpUserEvent<T>;
/**
* Base class for both `HttpResponse` and `HttpHeaderResponse`.
*
* @experimental
* @stable
*/
export abstract class HttpResponseBase {
/**
@@ -206,7 +206,7 @@ export abstract class HttpResponseBase {
* `HttpHeaderResponse` is a `HttpEvent` available on the response
* event stream, only when progress events are requested.
*
* @experimental
* @stable
*/
export class HttpHeaderResponse extends HttpResponseBase {
/**
@@ -247,7 +247,7 @@ export class HttpHeaderResponse extends HttpResponseBase {
* `HttpResponse` is a `HttpEvent` available on the response event
* stream.
*
* @experimental
* @stable
*/
export class HttpResponse<T> extends HttpResponseBase {
/**
@@ -297,7 +297,7 @@ export class HttpResponse<T> extends HttpResponseBase {
* will contain either a wrapped Error object or the error response returned
* from the server.
*
* @experimental
* @stable
*/
export class HttpErrorResponse extends HttpResponseBase implements Error {
readonly name = 'HttpErrorResponse';
@@ -34,14 +34,14 @@ function getResponseUrl(xhr: any): string|null {
/**
* A wrapper around the `XMLHttpRequest` constructor.
*
* @experimental
* @stable
*/
export abstract class XhrFactory { abstract build(): XMLHttpRequest; }
/**
* A factory for @{link HttpXhrBackend} that uses the `XMLHttpRequest` browser API.
*
* @experimental
* @stable
*/
@Injectable()
export class BrowserXhr implements XhrFactory {
@@ -63,7 +63,7 @@ interface PartialResponse {
* An `HttpBackend` which uses the XMLHttpRequest API to send
* requests to a backend server.
*
* @experimental
* @stable
*/
@Injectable()
export class HttpXhrBackend implements HttpBackend {
@@ -21,7 +21,7 @@ export const XSRF_HEADER_NAME = new InjectionToken<string>('XSRF_HEADER_NAME');
/**
* Retrieves the current XSRF token to use with the next outgoing request.
*
* @experimental
* @stable
*/
export abstract class HttpXsrfTokenExtractor {
/**
@@ -13,7 +13,7 @@ import {TestRequest} from './request';
/**
* Defines a matcher for requests based on URL, method, or both.
*
* @experimental
* @stable
*/
export interface RequestMatch {
method?: string;
@@ -24,7 +24,7 @@ export interface RequestMatch {
* Controller to be injected into tests, that allows for mocking and flushing
* of requests.
*
* @experimental
* @stable
*/
export abstract class HttpTestingController {
/**
@@ -25,7 +25,7 @@ import {TestRequest} from './request';
* requests were made and then flush them. In the end, a verify() method asserts
* that no unexpected requests were made.
*
* @experimental
* @stable
*/
@Injectable()
export class HttpClientTestingBackend implements HttpBackend, HttpTestingController {
@@ -18,7 +18,7 @@ import {HttpClientTestingBackend} from './backend';
*
* Inject `HttpTestingController` to expect and flush requests in your tests.
*
* @experimental
* @stable
*/
@NgModule({
imports: [
@@ -15,7 +15,7 @@ import {Observer} from 'rxjs/Observer';
* This interface allows access to the underlying `HttpRequest`, and allows
* responding with `HttpEvent`s or `HttpErrorResponse`s.
*
* @experimental
* @stable
*/
export class TestRequest {
/**
@@ -13,7 +13,7 @@ import {Injectable} from '@angular/core';
*
* Take care not to evaluate this in non-browser contexts.
*
* @experimental
* @deprecated use @angular/common/http instead
*/
@Injectable()
export class BrowserXhr {
@@ -24,7 +24,7 @@ const JSONP_ERR_WRONG_METHOD = 'JSONP requests must use GET request method.';
/**
* Abstract base class for an in-flight JSONP request.
*
* @experimental
* @deprecated use @angular/common/http instead
*/
export abstract class JSONPConnection implements Connection {
/**
@@ -141,7 +141,7 @@ export class JSONPConnection_ extends JSONPConnection {
/**
* A {@link ConnectionBackend} that uses the JSONP strategy of making requests.
*
* @experimental
* @deprecated use @angular/common/http instead
*/
export abstract class JSONPBackend extends ConnectionBackend {}
Oops, something went wrong.

1 comment on commit 72c7b6e

@princemaple

This comment has been minimized.

Show comment
Hide comment
@princemaple

princemaple Aug 29, 2017

could we have this fixed for ng5? #18424

princemaple commented on 72c7b6e Aug 29, 2017

could we have this fixed for ng5? #18424

Please sign in to comment.