如何处理使用 XMLHttpRequest 向服务器发出同步请求而服务器不可用的情况?
xmlhttp.open("POST","Page.aspx",false);
xmlhttp.send(null);
现在这种情况会导致 JavaScript 错误:“系统找不到指定的资源”
如何处理使用 XMLHttpRequest 向服务器发出同步请求而服务器不可用的情况?
xmlhttp.open("POST","Page.aspx",false);
xmlhttp.send(null);
现在这种情况会导致 JavaScript 错误:“系统找不到指定的资源”
好的,我通过使用 try...catch around xmlhttprequest.send 解决了它
:
xmlhttp.open("POST","Page.aspx",false);
try
{
xmlhttp.send(null);
}
catch(e)
{
alert('there was a problem communicating with the server');
}
尝试超时属性。
xmlHTTP.TimeOut= 2000
您没有检查正确返回的状态。通过您提供的代码,您正在执行 GET 请求。要正确检查请求的状态,您必须为 onreadystatechange 事件创建一个事件处理程序,然后在其中检查 readyState 属性是否等于 4,然后在方法内部检查状态是否为 200。
您可以在此处找到详细说明:Mozilla 的 Ajax 教程
xmlhttp.onreadystatechange=function()
xmlhttp.open("GET","Page.aspx",false);
{
if (xmlhttp.readyState==4)
{
if (xmlhttp.status==200)
{
//Ajax handling logic
}
}
}
xmlhttp.send(null);