HTTP请求和响应都包含一组头部消息,获取和设置头部消息可以使用下面两个方法。
- getAllResponseHeaders():获取响应的HTTP头部消息。
- getResponseHeader("Header-name"):获取指定的HTTP头部消息。
【示例】下面示例将获取HTTP响应的所有头部消息:
var xhr = createXHR();
var url = "server.txt";
xhr.open("GET", url, true);
xhr.onreadystatechange = function (){
if ( xhr.readyState == 4 && xhr.status == 200 ) {
console.log(xhr.getAllResponseHeaders()); //获取头部消息
}
}
xhr.send(null);
如果要获取指定的某个首部消息,可以使用getResponseHeader()方法,参数为获取首部的名称。例如,获取Content-Type首部的值,则可以这样设计。
console.log(xhr.getResponseHeader("Content-Type"));
除了可以获取这些头部消息外,还可以使用setRequestHeader()方法在发送请求中设置各种头部消息。用法如下:
xhr.setRequestHeader("Header-name", "value");
其中Header-name表示头部消息的名称,value表示消息的具体值。例如,使用POST方法传递表单数据,可以设置如下头部消息。
xhr.setRequestHeader("Content-type ", " application/x-www-form-urlencoded ");