Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.01.2011, 20:09
Кандидат Javascript-наук
Отправить личное сообщение для LRCenter Посмотреть профиль Найти все сообщения от LRCenter
 
Регистрация: 22.06.2009
Сообщений: 117

Вывод ошибки в случае потери связи.
В ajax-функции есть такой фрагмент:

if(req.status == 200){
...
}
else {...}


По идее, если возвращенный код статуса не 200, то можно выводить ошибку. Проблема в том что если вдруг пропадает соединение функция весит бесконечно не о чем не сообщая. Как бы сделать так чтобы через некоторое время без ответа она тоже выводила ошибку?
Ответить с цитированием
  #2 (permalink)  
Старый 19.01.2011, 20:13
Интересующийся
Отправить личное сообщение для namo86 Посмотреть профиль Найти все сообщения от namo86
 
Регистрация: 18.11.2010
Сообщений: 19

мне кажется это паранойя, но если так уж надо, наверно самый оптимальный вариант будет складывать все запросы в какойто общий дамп, а потом проверять через setInterval не подвисли какие либо запросы и в случае чаго перезапускать ...
Ответить с цитированием
  #3 (permalink)  
Старый 19.01.2011, 20:16
Кандидат Javascript-наук
Отправить личное сообщение для LRCenter Посмотреть профиль Найти все сообщения от LRCenter
 
Регистрация: 22.06.2009
Сообщений: 117

Не - мне не надо перезапускать - мне просто индикатор соединения нужен. А чтоб перезапускать его с интервалом времени - я к нему сам таймер пределаю. Но как проверить соединение?
Ответить с цитированием
  #4 (permalink)  
Старый 19.01.2011, 20:23
Интересующийся
Отправить личное сообщение для namo86 Посмотреть профиль Найти все сообщения от namo86
 
Регистрация: 18.11.2010
Сообщений: 19

Чтото меня смущает такая возможность впринципе ... всетаки браузеры не индусы пишут, я почти уверен что если капнуть в документации то можно обнаружить какуюнибуть опцию с параметром timeout ... а вообще в jQuery.ajax() точно есть такой параметр!
Ответить с цитированием
  #5 (permalink)  
Старый 19.01.2011, 20:28
Кандидат Javascript-наук
Отправить личное сообщение для LRCenter Посмотреть профиль Найти все сообщения от LRCenter
 
Регистрация: 22.06.2009
Сообщений: 117

раз в jQuery есть то и в JS такое можно сворганить только как? Наплевать, пусть потерю соединения нельзя будет отличить от кодов ошибки сервера, ну как приделать таймер чтобы процесс не зависал и скажем через 30 секунд бездействия выдавал ошибку?
Ответить с цитированием
  #6 (permalink)  
Старый 19.01.2011, 20:35
Интересующийся
Отправить личное сообщение для namo86 Посмотреть профиль Найти все сообщения от namo86
 
Регистрация: 18.11.2010
Сообщений: 19

Ну так наводка есть, вперед смотреть исходники jQuery.ajax()
Ответить с цитированием
  #7 (permalink)  
Старый 19.01.2011, 20:39
Кандидат Javascript-наук
Отправить личное сообщение для LRCenter Посмотреть профиль Найти все сообщения от LRCenter
 
Регистрация: 22.06.2009
Сообщений: 117

ой, так не охота - там же черт ногу сломит
Ответить с цитированием
  #8 (permalink)  
Старый 19.01.2011, 20:50
Кандидат Javascript-наук
Отправить личное сообщение для LRCenter Посмотреть профиль Найти все сообщения от LRCenter
 
Регистрация: 22.06.2009
Сообщений: 117

А как вообще в JS можно ввести в условие ограничение времени?
Ответить с цитированием
  #9 (permalink)  
Старый 19.01.2011, 21:13
Интересующийся
Отправить личное сообщение для namo86 Посмотреть профиль Найти все сообщения от namo86
 
Регистрация: 18.11.2010
Сообщений: 19

ну если лень разбираться, зачем писать чистый JS ... поставь jQuery да используй функцию ajax, там в документации есть описание всех параметров, в том числе timeout ...
Ответить с цитированием
  #10 (permalink)  
Старый 20.01.2011, 00:19
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от LRCenter
ой, так не охота - там же черт ногу сломит
все возможно, было бы желание...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск