有谁知道如何设置ServerXMLHTTP请求超时时的默认操作?我正在使用setTimeouts()根据MSDN site设置超时选项。

理想情况下,我想从头开始再次初始化请求,或者如果超时则刷新页面。

我正在使用经典的ASP和JScript。

这是我的要求:

function serverXmlHttp(url) {
    var serverXmlHttp;
    serverXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP.6.0");

    // set time out options
    serverXmlHttp.setTimeouts(15000,15000,15000,15000);

    // does not work
    // serverXmlHttp.ontimeout(Response.Write("page has timed out"));

    serverXmlHttp.open("GET", url, false);
    serverXmlHttp.send();

    if (serverXmlHttp.readyState == 4) {
        return serverXmlHttp.responseText;
    }
}

最佳答案

重要的是要找出为什么会超时..

远程URL与调用页面是否在同一应用程序上?

如果是这样,请看看 INFO: Do Not Send ServerXMLHTTP or WinHTTP Requests to the Same Server ,因为您将面临线程饥饿..

08-28 11:19