如何在异步请求时设置RequestHeader

一、为何要用到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);
            }
        });
});

  

 

posted @ 2015-01-27 15:26  寻一颗心  阅读(3023)  评论(0编辑  收藏  举报