XMLHttpRequest: response property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Note: This feature is available in Web Workers, except for Service Workers.
The XMLHttpRequest
response
property returns the response's body content as
an ArrayBuffer
, a Blob
, a Document
,
a JavaScript Object
, or a string, depending on the value
of the request's responseType
property.
Value
An appropriate object based on the value of responseType
.
You may attempt to request the data be provided in a specific format
by setting the value of responseType
after calling
open()
to initialize the request but before
calling send()
to send the request to the server.
The value is null
if the request is not yet complete or was unsuccessful,
with the exception that when reading text data using a responseType
of
"text"
or the empty string (""
), the response can contain the
response so far while the request is still in the LOADING
readyState
(3).
Examples
This example presents a function, load()
, which loads and processes a page
from the server. It works by creating an XMLHttpRequest
object and
creating a listener for readystatechange
events such that when
readyState
changes to DONE
(4), the response
is
obtained and passed into the callback function provided to load()
.
The content is handled as raw text data (since nothing here is overriding the default
responseType
).
const url = "somePage.html"; //A local page
function load(url, callback) {
const xhr = new XMLHttpRequest();
xhr.onreadystatechange = () => {
if (xhr.readyState === 4) {
callback(xhr.response);
}
};
xhr.open("GET", url, true);
xhr.send("");
}
Specifications
Specification |
---|
XMLHttpRequest Standard # the-response-attribute |
Browser compatibility
BCD tables only load in the browser
See also
- Using XMLHttpRequest
- Getting text and HTML/XML data:
XMLHttpRequest.responseText
andXMLHttpRequest.responseXML