Помощью jQuery AJAX-вызов тайм-аута по умолчанию


Я получил сообщение об ошибке, которое я не могу дублировать, но AJAX-Call timeout-это текущее лучшее предположение.

поэтому я пытаюсь узнать значение по умолчанию для таймаута jQuery $.ajax() звонок. У кого-нибудь есть идеи? Не удалось найти его в документации jQuery.

спасибо заранее, Маркус

4 60

4 ответа:

там, кажется, не стандартизированное значение по умолчанию. У меня такое чувство, что по умолчанию 0, и событие тайм-аута полностью зависит от настроек браузера и сети.

для IE существует свойство timeout для XMLHTTPRequests здесь. По умолчанию он равен null, и он говорит, что сетевой стек, вероятно, будет первым тайм-аутом (который будет не кстати, создайте событие ontimeout).

в стороне, при попытке диагностировать подобную ошибку я понял, что обратный вызов ошибки ajax jquery возвращает статус "тайм-аут", если он не удался из-за тайм-аута.

вот пример:

$.ajax({
    url: "/ajax_json_echo/",
    timeout: 500,
    error: function(jqXHR, textStatus, errorThrown) {
        alert(textStatus); // this will be "timeout"
    }
});

вот он на jsfiddle.

по умолчанию тайм-аут отсутствует.

The XMLHttpRequest.timeout свойство представляет собой количество миллисекунд, которое может занять запрос перед его автоматическим завершением. Значение по умолчанию:0, что означает нет тайм-аут. Важное замечание тайм-аут не должен использоваться для синхронного XMLHttpRequests запросы, используемые в среде документа или он будет бросать InvalidAccessError исключения. Вы не можете использовать тайм-аут для синхронных запросов с владеющего