You are viewing the documentation for an older major version of the AWS SDK for JavaScript.
The modular AWS SDK for JavaScript (v3), the latest major version of AWS SDK for JavaScript, is now stable and recommended for general use. For more information, see the Migration Guide and API Reference.

Class: AWS.HttpResponse

Inherits:
Object
  • Object
show all
Defined in:
lib/http.js

Overview

The low level HTTP response object, encapsulating all HTTP header and body data returned from the request.

Property Summary collapse

Method Summary collapse

Property Details

bodyString (readwrite)

Returns the response body payload.

Returns:

  • (String)

    the response body payload

headersmap<String,String> (readwrite)

Returns a map of response header keys and their respective values.

Returns:

  • (map<String,String>)

    a map of response header keys and their respective values

statusCodeInteger (readwrite)

Returns the HTTP status code of the response (e.g., 200, 404).

Returns:

  • (Integer)

    the HTTP status code of the response (e.g., 200, 404)

streamingBoolean (readwrite)

Returns whether this response is being streamed at a low-level. Defaults to false (buffered reads). Do not modify this manually, use createUnbufferedStream() to convert the stream to unbuffered mode instead.

Returns:

  • (Boolean)

    whether this response is being streamed at a low-level. Defaults to false (buffered reads). Do not modify this manually, use createUnbufferedStream() to convert the stream to unbuffered mode instead.

Method Details

createUnbufferedStream() ⇒ Stream, ...

Note:

This object is only available after the AWS.Request~httpHeaders event has fired. This method must be called prior to AWS.Request~httpData.

Disables buffering on the HTTP response and returns the stream for reading.

Examples:

Taking control of a stream

request.on('httpHeaders', function(statusCode, headers) {
  if (statusCode < 300) {
    if (headers.etag === 'xyz') {
      // pipe the stream, disabling buffering
      var stream = this.response.httpResponse.createUnbufferedStream();
      stream.pipe(process.stdout);
    } else { // abort this request and set a better error message
      this.abort();
      this.response.error = new Error('Invalid ETag');
    }
  }
}).send(console.log);

Returns:

  • (Stream, XMLHttpRequest, null)

    the underlying stream object. Use this object to directly read data off of the stream.