Показать сообщение отдельно
  #1 (permalink)  
Старый 20.01.2018, 13:08
Интересующийся
Отправить личное сообщение для antonhauff Посмотреть профиль Найти все сообщения от antonhauff
 
Регистрация: 16.10.2017
Сообщений: 23

Try...Cath и The server responded with a status of 429 ()
Всем добра. Не могу отпимизировать код.
Есть скрипт, который пишет в чат какие-то рандонмые сообщения. Скрипт запускается на стороннем сайте. Иногда, со стороны сайта есть ошибки, например такие: "Failed to load resource: the server responded with a status of 429 ()" либо какой-нибудь другую (например иногда это может быть 500(), либо 502()).
В таком случае, скрипт "зависает" на бесконечном выполнении третьего блока функции checkResult() так как сообщение не отравилось.
На данный момент лечение появляющийся ошибки лечится перезагрузкой страницы. Но это не комильфо

Есть ли возможность как-то отлавливать ошибки и перезапускать скрипт? Если это можно делать через try...cath то вопрос будет довольно глупый - что мне записывать в try, и что прописать в cath?

(function (window, undefined) {  // [2] нормализуем window
var w;
if (typeof unsafeWindow != undefined) {
    w = unsafeWindow;
} else {
    w = window;
}
if (w.self != w.top) {
    return;
}

//здесь мы нажимаем на кпопку отправить
function start() {
    var read = getread();
    checkResult(read);
}

//тут мы ждем изменение в окне чата
function checkResult(last_read) {
    setTimeout(function() {
        if (last_read < getread()) {
        //1-ый блок
        } else if (last_read > getread()) {
        //2-ый блок
        } else {
        //3-ый блок
        checkResult(last_read);
        }
    }, 500);
}

//тут алгоритм конфигурирует сообщение в чат
function getread() {
}

setInterval(start, 500);
})(window);
Ответить с цитированием