В jQuery я хочу получить некоторые данные из facebook, используя метод $.getJSON()
, но если токен недействителен, Facebook возвращает статус 400. Как я могу поймать ошибку в $.getJSON()
вместо $.ajax()
?
Как поймать ответ 400 в вызове jQuery getJSON
Ответы (3)
Я думаю, это сработает для вас
$.getJSON("example.json", function() {
alert("success");
})
.success(function() { alert("success 2"); })
.error(function() { alert("error occurred "); })
.complete(function() { alert("Done"); });
person
Elby
schedule
14.11.2012
@ Ludo-Offtherecord Разве это не потому, что вы смотрите на вопрос, на который ответили в 2012 году?
- person santon; 10.04.2019
Я знаю, но сейчас мы живем в 2019 году, и люди (такие как я) по-прежнему будут сталкиваться с этим так приятно, если будут знать, почему это не работает для них и что сработает. Я не говорю, что ваш ответ был неправильным, я просто говорю, что это уже не правильно.
- person Ludo - Off the record; 18.06.2019
документы Ajax jquery предлагают два решения, первое - это функция ошибки:
error(jqXHR, textStatus, errorThrown)
который обнаруживает и сообщает текстовые части сообщений об ошибках для вас, другой — функция кода состояния (на той же странице). Вот пример использования с этой страницы:
$.ajax({
statusCode: {
404: function() {
alert("page not found");
}
}
});
person
A.M. D.
schedule
14.11.2012
Используйте обратный вызов функции complete(jqXHR, textStatus)
, исследуйте ответ и покажите соответствующее сообщение пользователю.
person
Varun Achar
schedule
14.11.2012