一、为何要用到setRequestHeader
通常在HTTP协议里,客户端像服务器取得某个网页的时候,必须发送一个HTTP协议的头文件,告诉服务器客户端要下载什么信息以及相关的参数。而 XMLHTTP 就是通过HTTP协议取得网站上的文件数据的,所以也要发送HTTP头给服务器。 但是 XMLHTTP 默认的情况下有些参数可能没有说明在HTTP头里,这是当我们需要修改或添加这些参数时就用到了setRequestHeader 方法。
二、js设置
var xmlHttp = new XMLHttpRequest(); //这里没有做IE5、6兼容
在发送请求之前 ,调用方法 xmlHttp.setRequestHeader('xxxx','yyyy');即可
三、jquery设置
ajax函数中,有一个beforeSend方法,这个方法接受一个参数,就代表了发起异步请求的XMLHttpRequest对象,我们可以用该对象的setRequestHeader方法实现我们的目的:如下示例
$("#test").click(function() { $.ajax({ type: "GET", url: "xxxxx", //你的异步请求url beforeSend: function(request) { request.setRequestHeader("xxxx", "yyyy"); }, success: function(result) { console.log(result); } }); });