The XMLHttpRequest
method getResponseHeader()
returns the string containing the text of a particular header's value.
If there are multiple response headers with the same name, then their values are returned as a single concatenated string, where each value is separated from the previous one by a pair of comma and space. The getResponseHeader()
method returns the value as a UTF byte sequence.
Note: The search for the header name is case-insensitive.
If you need to get the raw string of all of the headers, use the getAllResponseHeaders()
method, which returns the entire raw header string.
Syntax
getResponseHeader(headerName)
Parameters
-
A string indicating the name of the header you want to return the text value of.
Return value
A string representing the header's text value, or null
if either the response has not yet been received or the header doesn't exist in the response.
Examples
In this example, a request is created and sent, and a readystatechange
handler is established to look for the readyState
to indicate that the headers have been received; when that is the case, the value of the Content-Type
header is fetched. If the Content-Type
isn't the desired value, the XMLHttpRequest
is canceled by calling abort()
.
const client = new XMLHttpRequest();
client.open("GET", "unicorns-are-awesome.txt", true);
client.send();
client.onreadystatechange = () => {
if (client.readyState === client.HEADERS_RECEIVED) {
const contentType = client.getResponseHeader("Content-Type");
if (contentType !== my_expected_type) {
client.abort();
}
}
};
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
getResponseHeader |
1 |
12 |
1Starting from Firefox 49, empty headers are returned as empty strings in case the preference network.http.keep_empty_response_headers_as_empty_string is set to true , defaulting to false . Before Firefox 49 empty headers had been ignored. Since Firefox 50 the preference defaults to true .
|
5 |
8 |
1.2 |
4.4 |
18 |
4Starting from Firefox 49, empty headers are returned as empty strings in case the preference network.http.keep_empty_response_headers_as_empty_string is set to true , defaulting to false . Before Firefox 49 empty headers had been ignored. Since Firefox 50 the preference defaults to true .
|
10.1 |
1 |
1.0 |
See also