Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Зависает редирект / 5 сообщений из 5, страница 1 из 1
27.01.2020, 18:20
    #39919187
Zhenek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает редирект
Добрый день. Прошу помочь вот с такой проблемой..
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
 let timeoutID;
        timeoutID = setInterval(checkReload,15000);  
            var noreload = false;
            function checkReload(){
        console.log('CheckReload');
        jQuery.ajax({
        url: '/classes/json.php?do=checkReload&ids=123,125,176',
        success: function (result) {
          if(result!='9261a055adbde339a1be75bcb4ec1ad1110e374e' && noreload==false){console.log('startReload');noreload=true;clearInterval(timeoutID);location.reload();console.log('endReload');}
        },
        async: false
    });
                        }



Раз в 15 сек делается запрос на сервер, получаю хэш, сравниваю, если были какие-то изменения, перезагружаю страницу.
Все работает хорошо, но в некоторых случаях, по крайне мере знаю точно про 1, где периодически это дело подвисает.

в логе выглядит так:

Код: javascript
1.
2.
3.
4.
5.
CheckReload
CheckReload
CheckReload
startReload
endReload



и все. т.е. больше startReload не пишется. значит эта часть кода больше не отрабатывает.
дальше страница в вечной загрузке. при этом иконка вкладки (крутящаяся анимация загрузки) делает 2/3 оборота и сбрасывается на начало. т.е. как будто страница в процессе перезагрузки, через 2 сек опять перезагружается и так постоянно.

До этого вместо location.reload(); было document.location.reload(true); поменял, асинхронным тоже делал.
Хотелось бы исключить именно ошибку в JS
Браузер хром последний (ноут и стационар), и хром мобильный, разные операторы, качество инета.

п.с. в консоле ошибок нет
...
Рейтинг: 0 / 0
27.01.2020, 19:13
    #39919195
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает редирект
Zhenek,

у тебя не всё в ajax есть - обработка ошибок где? проверка статуса ответа от сервера?
...
Рейтинг: 0 / 0
27.01.2020, 19:49
    #39919200
Zhenek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает редирект
Но ведь если выполнился console.log('startReload'); , значит ответ был success?
+Если вывести в лог полученные данные, то там и правда хэш. т.е. получаем ответ, делаем сравнение, делаем reload и все подвисает.
Попробую еще релоад заменить на location.href , может редирект отработает нормально...если дело в этом
...
Рейтинг: 0 / 0
28.01.2020, 13:58
    #39919441
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает редирект
Код: sql
1.
document.location.reload(true);
...
Рейтинг: 0 / 0
28.01.2020, 17:21
    #39919565
Zhenek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает редирект
Konst_One,

авторДо этого вместо location.reload(); было document.location.reload(true); поменял, асинхронным тоже делал.

Такой вариант был самым первым, потом поменял его на location.reload()
Но зависания есть и там и там..
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Зависает редирект / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]