Можно ли принудительно вызвать функцию $.getJSON()
, чтобы поднять ошибку, когда мы пытаемся получить HTML-код (не application/json
). Кажется, что это отложенное просто возвращает пустой объект тогда (или сделан).
Как мы можем найти в then
обработчик, который content-type
был обработан в ответ? У меня возникла ситуация, когда сервер может возвращать HTML вместо JSON, когда служба недоступна.
почему вы не просто выбросить исключение в обработчик, когда ответ является пустым, то? –
На самом деле это довольно просто, если статус 20x, и ответ может успешно проанализироваться с помощью $ .parseJSON, считается успешным. Он игнорирует контент-тип, потому что разработчики часто забывают его вернуть. Вы должны проверить значение null в. Then и вызывать обещание отклонить, если это пустая или пустая строка (или исправить сервер). –