Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.01.2011, 23:20
Аспирант
Отправить личное сообщение для prog90 Посмотреть профиль Найти все сообщения от prog90
 
Регистрация: 04.06.2009
Сообщений: 51

Как узнать что соединение было сброшено?
Если идет ajax-запрос, а за ним вдруг поступает второй, и когда вызывается метод open того же объекта xmlhttprequest, то первый запрос автоматически сбрасывается. Firebug показывает сообщение "aborted".
Как узнать в функции обработчике ответов сервера, что соединение - "aborted"?
спасибо
Ответить с цитированием
  #2 (permalink)  
Старый 13.01.2011, 07:38
Аспирант
Отправить личное сообщение для Saimon7887 Посмотреть профиль Найти все сообщения от Saimon7887
 
Регистрация: 03.02.2010
Сообщений: 37

Вот посмотри может пригодится JQuery AJAX, поймать разрыв соединения
Ответить с цитированием
  #3 (permalink)  
Старый 13.01.2011, 15:39
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

не вызывать open у xmlhttprequest пока не завершился предыдущий запрос
Ответить с цитированием
  #4 (permalink)  
Старый 13.01.2011, 15:44
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

а вообще, я имел в виду не работать напрямую с xmlhttprequest. Создать для него оболочку, которая будет знать, какой сейчас запрос выполняется и сможет вызвать нужный обработчик, если нужно запрос прервать
Ответить с цитированием
  #5 (permalink)  
Старый 13.01.2011, 20:37
Аватар для Nekromancer
Профессор
Отправить личное сообщение для Nekromancer Посмотреть профиль Найти все сообщения от Nekromancer
 
Регистрация: 06.05.2009
Сообщений: 1,163

var req = xhr(),//кроссбраузерная функция создания объекта
 aborted = false; 
//некий код
req.onreadystatechange = function(){
  if(req.readyState!=4) return;
  //некий код
if(req.satus === undefined)&&(req.statusText === 'Unknown'||req.statusText===''&&req.responseXML===null){
 if(!aborted){
 aborted = true;
}
}
}
try{
req.onabort = function(){
if(!aborted) aborted = true;
}catch(e){}
}


а вообще лучше сделать как в предыдущем посте сказано)
__________________
Нужно равняться на лучших, а не оправдываться за счёт худших.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать, что содержит onClick? PHPNoob Events/DOM/Window 3 17.07.2015 12:20
Как можно узнать что value в INPUT изменилось? moskrc jQuery 2 22.10.2010 09:06
Как узнать о том, что флэш уже загрузился. Snipe Общие вопросы Javascript 4 29.01.2009 11:21
Как узнать, что IFRAME загрузился? DeUre Общие вопросы Javascript 4 01.08.2008 14:09
Как узнать что находится в <label></label> duke_nu Events/DOM/Window 4 22.04.2008 21:53