--- title: XMLHttpRequest.getResponseHeader() slug: Web/API/XMLHttpRequest/getResponseHeader tags: - API - HTTP协议 - XHR头 - XHR请求 - XMLHttpRequest - getResponseHeader - http头 - 引用 - 得到响应头 - 报文 - 方法 translation_of: Web/API/XMLHttpRequest/getResponseHeader ---
{{draft}}{{APIRef('XMLHttpRequest')}}
XMLHttpRequest.getResponseHeader()方法返回包含指定响应头文本的字符串。
如果在返回的响应头中有多个一样的名称,那么返回的值就会是用逗号和空格将值分隔的字符串。getResponseHeader()方法以UTF编码返回值。搜索的报文名是不区分大小写的。
var myHeader = XMLHttpRequest.getResponseHeader(name);
报文项值,如果连接未完成,响应中不存在报文项,或者被W3C限制,则返回null。
var client = new XMLHttpRequest();//新建XMLHttpRequest对象。 client.open("GET", "somefile.txt", true);//采用异步,GET方式获取somefile.txt。 client.send();//发送空的query string。 client.onreadystatechange = function() {//设定侦听器onreadystatechange。 if(this.readyState == this.HEADERS_RECEIVED) {//如果readyState表示响应头已返回 var contentType=client.getResponseHeader("Content-Type"));//将此连接的Content-Type响应头项赋值到contentType。 if(contentType != my_expected_type) {//如果这不是你的预期值 client.abort();//终止连接 } } }
规范 | 状态 | 注释 |
---|---|---|
{{SpecName('XMLHttpRequest', '#dom-xmlhttprequest-getresponseheader', 'getResponseHeader()')}} | {{Spec2('XMLHttpRequest')}} | WHATWG living standard |
浏览器 | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
基础支持 | {{CompatChrome(1)}} | {{CompatVersionUnknown}} | {{CompatUnknown}}[1] | {{CompatIe('5')}}[2] {{CompatIe('7')}} |
{{CompatVersionUnknown}} | {{CompatSafari('1.2')}} |
浏览器 |
Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
基础支持 | {{CompatUnknown}} | 1.0 | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
[1]从Firefox 49开始,在首选项network.http.keep_empty_response_headers_as_empty_string设置为true的情况下,空响应头将作为空字符串返回,默认为false。 在Firefox 49之前,空响应头已被忽略。从Firefox 50开始,该项默认设置为true。
[2]该功能最开始是通过ActiveXObject()实现的。 直到Internet Explorer 7,标准的XMLHttpRequest才出现。