gpt4 book ai didi

javascript - 重新建立连接时 xmlhttprequest 状态不会更改

转载 作者:行者123 更新时间:2023-12-03 12:24:13 25 4
gpt4 key购买 nike

我想发布一个 http 请求,直到收到肯定的响应。如果我的笔记本电脑上的 WiFi 已打开,我会得到肯定的响应并且程序会退出(正确)。如果我的笔记本电脑上的 wifi 最初关闭,但在程序仍在尝试时打开,我不会得到积极的响应,并且程序会继续尝试并失败,直到退出。当wifi打开时,xmlhttp.status不应该= 200吗?

xmlhttp = new XMLHTTPRequest();
xmlhttp.open("POST", url, true);
xmlhttp.setRequestHeader('User-Agent', 'XMLHTTP/1.0');

data = "Some text here";
xmlhttp.send(Base64.encode(data));

var timeout = 16;
var response = '';

for (var t = 0; t < timeout; t++) {

if (xmlhttp.ReadyState == 4) {

// If XMLHTTPRequest returns status code 200 (OK) and the response text contains REPORT_SUCCESS, it means that the report was successful.
if (xmlhttp.Status == 200 && xmlhttp.ResponseText.indexOf(REPORT_SUCCESS) != -1) {

return true;
} else {
if (xmlhttp.Status == 200) {
// if the XMLHTTPRequest returns status code 200 (ok) and the response text does not contain REPORT_SUCCESS
break;
} else {
//try again
}
}
}

WScript.Sleep(1000);
}

最佳答案

当 wifi 关闭时,xmlhttp 已完成请求并收到错误响应。当 wifi 打开时,它不会自动重试请求。这必须由您自己完成。

ReadyState = 4 和 Status != 200 一直在循环中。

如果 xmlhttp 开始发送请求并且 wifi 同时打开,您的代码将起作用。

关于javascript - 重新建立连接时 xmlhttprequest 状态不会更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24297728/

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