The XMLHttpRequest.getAllResponseHeaders() method returns all the response headers, separated by CRLF, as a string, or null
if no response has been received. If a network error happened, an empty string is returned.
Note: For multipart requests, this returns the headers from the current part of the request, not from the original channel.
Syntax
var headers = XMLHttpRequest.getAllResponseHeaders();
Parameters
None.
Return value
A ByteString
representing all of the response's headers (except those whose field name is Set-Cookie
or Set-Cookie2
) separated by CRLF, or null
if no response has been received. If a network error happened, an empty string is returned.
Example
var request = new XMLHttpRequest(); request.open("GET", "foo.txt", true); request.send(); request.onreadystatechange = function() { if(this.readyState == this.HEADERS_RECEIVED) { console.log(request.getAllResponseHeaders()); } }
Specifications
Specification | Status | Comment |
---|---|---|
XMLHttpRequest The definition of 'getAllResponseHeaders()' in that specification. |
Living Standard | WHATWG living standard |
Browser compatibility
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | 1 | (Yes) | 1.0 (1.7 or earlier)[1] | 5[2] 7 |
(Yes) | 1.2 |
Feature | Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | ? | 1.0 | (Yes) | 1.0 (1.0) | ? | ? | ? |
[1] Starting 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
.
[2] This feature was implemented via ActiveXObject(). Internet Explorer implements the standard XMLHttpRequest since version 7.