Я делаю вызов Ajax, как это:
var requestData = function() {
$.ajax({
dataType: 'jsonp',
jsonp: 'js',
url: "http://someServer",
success: function (data) {
// do stuff with data
},
complete : function(data) {
// try again in 5 seconds
setTimeout(requestData, 5000);
}
});
};
Все хорошо, и это работает, ЗА ИСКЛЮЧЕНИЕМ: сервер немного ненадежен, и время от времени он не может вернуть ответ. Это нормально, но когда это происходит, полный обработчик никогда не срабатывает. Я также пытался использовать обработчик ошибок. Есть ли что-то еще, что я могу сделать? Я думал об использовании setInterval, но я действительно предпочел бы сделать следующий после этого, а не в установленное время, когда они могут накапливаться ....
ОБНОВЛЕНИЕ: при сбое сервера я получаю сообщение «Не удалось загрузить ресурс» в консоли chrome.