This is the archived documentation for Angular v5. Please visit angular.io to see documentation for the current version of Angular.

ResponseOptions

npm Package @angular/http
Module import { ResponseOptions } from '@angular/http';
Source http/src/base_response_options.ts

Deprecation Notes

use @angular/common/http instead

Overview

      
      class ResponseOptions {
  constructor(opts: ResponseOptionsArgs = {})
  body: string | Object | ArrayBuffer | Blob | null
  status: number | null
  headers: Headers | null
  url: string | null
  merge(options?: ResponseOptionsArgs): ResponseOptions
}
    

Description

Creates a response options object to be optionally provided when instantiating a Response.

This class is based on the ResponseInit description in the Fetch Spec.

All values are null by default. Typical defaults can be found in the BaseResponseOptions class, which sub-classes ResponseOptions.

This class may be used in tests to build Responses for mock responses (see MockBackend).

Example (live demo)

      
      import {ResponseOptions, Response} from '@angular/http';

var options = new ResponseOptions({
  body: '{"name":"Jeff"}'
});
var res = new Response(options);

console.log('res.json():', res.json()); // Object {name: "Jeff"}
    

Subclasses

Constructor

      
      constructor(opts: ResponseOptionsArgs = {})
    

Members

      
      body: string | Object | ArrayBuffer | Blob | null
    

String, Object, ArrayBuffer or Blob representing the body of the Response.


      
      status: number | null
    

Http status code associated with the response.


      
      headers: Headers | null
    

Response headers


      
      url: string | null
    

      
      merge(options?: ResponseOptionsArgs): ResponseOptions
    

Creates a copy of the ResponseOptions instance, using the optional input as values to override existing values. This method will not change the values of the instance on which it is being called.

This may be useful when sharing a base ResponseOptions object inside tests, where certain properties may change from test to test.

Example (live demo)

      
      import {ResponseOptions, Response} from '@angular/http';

var options = new ResponseOptions({
  body: {name: 'Jeff'}
});
var res = new Response(options.merge({
  url: 'https://google.com'
}));
console.log('options.url:', options.url); // null
console.log('res.json():', res.json()); // Object {name: "Jeff"}
console.log('res.url:', res.url); // https://google.com