gpt4 book ai didi

javascript - 获取状态为 0

转载 作者:行者123 更新时间:2023-11-30 12:48:42 25 4
gpt4 key购买 nike

您好,我正在使用下面的代码进行 ajax 调用

alert("4");
req.onreadystatechange=function()
{
alert("5");
if (req.readyState==4 && req.status==200)
{
xmlDoc=req.responseXML;
alert("xml doc received"+xmlDoc);
txt="";
x=xmlDoc.getElementsByTagName("FIRSTNAME");
y=xmlDoc.getElementsByTagName("LASTNAME");
alert("Response achieved"+x);
}
else
{
alert("Error!!! --> req.readyState "+req.readyState+" Error !!! ---> req.status "+req.status);
}
}


req.open("POST",url,true);
alert("6");
req.setRequestHeader("Content-type","application/x-www-form-urlencoded");
req.send(parameters);

我得到的 req.readyState 为 4,req.status 为 0可能是什么问题

我在本地 apache 服务器上托管一个文件。请回复。

最佳答案

通常的原因是您尝试进行跨域调用并被 Same Origin Policy 停止,它禁止跨源 ajax 调用。您应该会在开发者控制台或网络选项卡中收到一条错误消息,告诉您请求已被阻止。

如果您控制有问题的服务器,或者您可以联系那些这样做的人,您可以(让他们)通过 Cross-Origin Resource Sharing 启用从您的来源的访问。 .如果他们将您的来源列入白名单,则适用于所有现代浏览器,但遗憾的是在 IE8 和 IE9 中您必须使用 Microsoft 的特殊 XDomainRequest 对象而不是 XMLHttpRequest(从 IE10 开始,Microsoft终于入党了)。

或者,您可能会看到您尝试使用的服务器是否支持 JSONP (不要将其与 JSON 混淆),尽管由于您的请求是 POST 而 JSONP 本质上是 GET 操作,因此它们可能不是。

关于javascript - 获取状态为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21721194/

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