POST XMLHttpRequest中没有“ Content-Length”标头吗?

时间:2020-06-21 20:21:16

标签: javascript networking xmlhttprequest content-length

因此,我创建了一个Python服务器(与该问题无关),该服务器应与HTML网站进行通信。为了进行通信,我从逻辑上转向了XMLHttpRequest-我以前从未使用过。

我有一些联网经验,但是使用其他环境和语言。在发送请求之前,我通常会在请求上设置“ Content-Length”标头,但显然出于安全原因,此标头是被禁止的标头。据说该标头应在发送到服务器时由浏览器自动设置。

但是,当请求到达Python服务器时,我发现不存在“ Content-Length”标头,这对于读取POSTed文件是必不可少的...

我在这里想念东西吗?

如果有任何重要性,下面是创建XmlHttpRequest并将其发送到服务器的代码:

function PostRequest(uri, toSend, func) {
    var xmlHttp = new XMLHttpRequest();
    xmlHttp.open("POST", uri, true);

    xmlHttp.setRequestHeader("Content-Type", "application/json");
            
    xmlHttp.onreadystatechange = function() {
        if (this.readyState === XMLHttpRequest.DONE && this.status === 200) {
            func();
        }
    }
    console.log(toSend);
    xmlHttp.send(toSend);
}

在这里,uri是服务器的URL,toSend是要发送的JSON字符串,最后func是在请求完成时调用的函数。

预先感谢:)

0 个答案:

没有答案
相关问题