обработка ошибок с .post ()

Я должен изменить проект, записанный кем-то еще. Поскольку код является путаницей, я не могу действительно изменить этот $ .post () (или заменить его $ .ajax ()). То, что я должен сделать, должно знать, возвращает ли сообщение что-то еще затем JSON, и возвратите его.

$.post('balbal.html', json, function(data) { ... my coude ... }, 'json')

Я вижу ответ сообщения в console.log. Существует ли простой способ получить его?

48
задан meo 10 August 2014 в 22:08
поделиться

2 ответа

Есть несколько способов сделать это, но если вы не получаете ответ об ошибке через возвращенный объект данных JSON, вы можете использовать $. ajaxSetup () для определения значений по умолчанию для всех вызовов ajax через jQuery. Несмотря на то, что метод $. Post () сам по себе не определяет обработчик ошибок или обратный вызов, метод $. AjaxSetup () фиксирует любые ошибки ajax и выполняет функция, которую вы для него определяете.

В качестве альтернативы существует функция $. AjaxError () , которая будет делать то же самое.

Обратите внимание, что это не сработает, если ваш ответ JSON будет возвращен правильно, но с кодом ошибки на стороне сервера. Если вы хотите зафиксировать подобные случаи, лучше всего их найти с помощью метода $. AjaxComplete ()

13
ответ дан 7 November 2019 в 12:11
поделиться

Вы можете использовать $. Ajax () ( $. Post - это ярлык, который все равно вызывает его) и определите обратный вызов ошибки.

Или, если вы действительно не хотите этого делать, вызовите

$.ajaxError(function(){
   //error handler
})

перед этим $. Post

2
ответ дан 7 November 2019 в 12:11
поделиться
Другие вопросы по тегам:

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