Ajax的标题是做什么的

时间:2018-01-04 08:38:45

标签: javascript html ajax

什么是Ajax的标题角色?为什么我们需要这个?

在下面的这个特定情况下,导致xhttp.setRequestHeader()和没有?

之间存在差异的原因是什么?
<!DOCTYPE html>
<html>
<body>
<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
        console.log(this.responseText);
    }
}
xhttp.open("POST", "demo_post2.asp", true);
// xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.send("fname=Henry&lname=Ford");
</script>

</body>
</html>

1 个答案:

答案 0 :(得分:1)

HTTP标头用于发送附加数据或元数据以及请求的主体,以向服务器或浏览器提供诸如内容类型之类的信息;例如,浏览器可能告诉服务器它希望服务器使用JSON编码数据进行响应。

在这种情况下,将content-type设置为x-www-form-urlencoded会告知服务器表单数据被编码为URL查询字符串(例如,使用?name=value&othername=othervalue)。如果您想上传文件而不是发送常规表单数据,则可以使用multipart/form-data代替content-type