Ajax jQuery - Как Обнаружить ошибку Сетевого соединения при совершении вызова Ajax

LibHaru

Haru является свободной, кросс-платформенной, открыто полученной библиотекой программного обеспечения для генерации PDF, записанного в ANSI-C. Это может работать обоими статическая библиотека (.a, .lib) и общая библиотека (.so, .dll).

не попробовал его самостоятельно, но возможно это может помочь Вам

84
задан Sunday Ironfoot 13 November 2009 в 17:19
поделиться

3 ответа

Вы должны просто добавить: timeout: <количество миллисекунд>, где-нибудь в пределах $. Ajax ({}) . Кроме того, cache: false, может помочь в нескольких сценариях.

$. Ajax хорошо документирован , вы должны проверить там параметры, возможно, найдете что-то полезное.

Удачи!

13
ответ дан 24 November 2019 в 08:38
поделиться

Т.к. Я не могу дублировать проблему, я могу только предложить попробовать с тайм-аутом при вызове ajax. В jQuery вы можете установить его с помощью $ .ajaxSetup (и он будет глобальным для всех ваших вызовов $ .ajax) или вы можете установить его специально для вашего вызова следующим образом:

$.ajax({
    type: 'GET',
    url: 'http://www.mywebapp.com/keepAlive',
    timeout: 15000,
    success: function(data) {},
    error: function(XMLHttpRequest, textStatus, errorThrown) {}
})

JQuery зарегистрирует тайм-аут 15 секунд для вашего вызова ; после этого без кода ответа http от сервера jQuery выполнит обратный вызов ошибки со значением textStatus, установленным на «тайм-аут». Таким образом вы можете хотя бы остановить вызов ajax, но не сможете отличить настоящие проблемы сети от потери соединения.

9
ответ дан 24 November 2019 в 08:38
поделиться

Вы пробовали это?

$(document).ajaxError(function(){ alert('error'); }

Это должно обрабатывать все ошибки AjaxErrors. Я нашел его здесь . Там вы также найдете возможность записать эти ошибки в консоль firebug.

-6
ответ дан 24 November 2019 в 08:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: