У меня есть код, который зацикливает 2 метода.
Метод 2 проверяет URL, используя XMLHttpRequest
.
Проблема, с которой я сталкиваюсь, заключается в том, что когда Интернет активен, он продолжает цикл, но как только я выключаю Интернет, XMLHttpRequest завершится сбоем и прекратит цикл.
Вот код:
one() {
return new Promise(resolve=> {
// Does something and returns either true or false
})
}
two() {
return new Promise(resolve => {
const httpRequest = new XMLHttpRequest();
httpRequest.open("GET", 'someurl', true);
httpRequest.send();
httpRequest.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
resolve(this);
}
};
})
}
loop() {
setTimeout(() => {
this.one()
.then(()=>this.two().then(response => {
if (response.status === 200) {
// Its True
} else {
// Its False
}
}))
.then(()=>this.loop())
}, 5000);
}
}
Как я могу сделать так, чтобы он продолжал цикл, несмотря ни на что?