在AJAX中打开连接后,为什么要设置Request标头?

时间:2016-11-26 07:48:59

标签: javascript ajax

我一直在网上阅读这段代码:

function ajax_post(){

    var hr = new XMLHttpRequest();

    var url = "my_parse_file.php";
    var fn = document.getElementById("first_name").value;
    var ln = document.getElementById("last_name").value;
    var vars = "firstname="+fn+"&lastname="+ln;

    hr.open("POST", url, true); // line 1

    hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // line 2

    hr.onreadystatechange = function() {
        if(hr.readyState == 4 && hr.status == 200) {
            var return_data = hr.responseText;
            document.getElementById("status").innerHTML = return_data;
        }
    }

    hr.send(vars); 
    document.getElementById("status").innerHTML = "processing...";
}

我无法理解为什么要设置请求标题 AFTER 打开连接 根据我的逻辑,你首先制作包头,包含所有内容并发送数据,但为什么我们在上面的例子中采用相反的方式。

0 个答案:

没有答案