gpt4 book ai didi

javascript - JQuery JSON 调用返回 ERR_EMPTY_RESPONSE 超时

转载 作者:行者123 更新时间:2023-11-28 06:58:29 25 4
gpt4 key购买 nike

我有一个本地网络服务器在端口 4444 上运行。该网络服务器提供 html 页面和其他文件,一切正常。但是,当我尝试从服务器获取 JSON 数据时,我遇到超时,并在 Javascript 控制台中出现错误 ERR_EMPTY_RESPONSE。如果我将 JSON 作为页面加载,它会正确显示。

我使用 Chrome 和 Firefox 进行了测试。除了 Chrome 中的超时和 ERR_EMPTY_RESPONSE 之外,两者都不会显示任何错误。

  • 可能是 JSON 格式错误。
  • 可能存在另一个与域相关的问题(我认为是因为我在本地托管)。
  • 或者我的 HTTP header 错误。

这是我的 JSON 数据。

[
{
"x": "286.610989010989",
"y": "43.716483516483514",
"r": "103.5956043956044",
"g": "127.81208791208792",
"b": "143.07472527472527"
},
{
"x": "286.610989010989",
"y": "43.716483516483514",
"r": "103.5956043956044",
"g": "127.81208791208792",
"b": "143.07472527472527"
},
]

这是我的 ajax 调用。我还尝试设置内容类型。

function getData() {
$.ajax({
url: "/data",
type: "json",
timeout: 3000,
success: actData,
complete: getData,
error: function(xhr, status, error) {
console.log(error);
}
});
}

这些是我的 HTTP header 。我尝试将内容类型设置为 application/json 和 text/html。

    os.print("HTTP/1.0 200" + "\r\n");
os.print("Content-Type: text/plain" + "\r\n");

os.print("Content-Length: " + data.length() + "\r\n");
os.print("\r\n");
os.write(data);

最佳答案

我发现了问题所在,而且比我想象的要愚蠢。我过滤了我的请求,只允许 POST 和 GET,因为我认为过滤输入是好的行为。然而,JSON 请求实际上使用 JSON 而不是 GET 发送 header 。于是就被过滤掉了。因此,我实际上可以在浏览器中看到它,但不能将其作为 JSON 检索(因为这样它会发送 JSON header )。

关于javascript - JQuery JSON 调用返回 ERR_EMPTY_RESPONSE 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32360491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com