Да, коды ответов не 200 может вызвать ошибку, здесь вы можете увидеть, что составляет "успех" :
httpSuccess: function( xhr ) {
try {
// IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450
return !xhr.status && location.protocol === "file:" ||
xhr.status >= 200 && xhr.status < 300 ||
xhr.status === 304 || xhr.status === 1223;
} catch(e) {}
return false;
}
Это наjQuery 1.4.4, предыдущий код состояния 0
также был успешным, потому что Opera 304
была объявлена как 0
... что снисходительность с тех пор была удалена, чтобы исключить ложные срабатывания для успеха.Если вышеупомянутая проверка false
, , обработчик ошибок называется .