Estoy usando jQuery para hacer una solicitud AJAX. Quiero realizar diferentes acciones, ya sea que el código de estado HTTP sea un error 400 o un error 500. ¿Cómo puedo conseguir esto?
$.ajax({
type: 'POST',
url: '/controller/action',
data: $form.serialize(),
success: function(data){
alert('horray! 200 status code!');
},
error: function(data){
//get the status code
if (code == 400) {
alert('400 status code! user error');
}
if (code == 500) {
alert('500 status code! server error');
}
},
});
Actualizar:
@GeorgeCummins mencionó que "parecía extraño" trabajar con el cuerpo de respuesta. Esta es la primera vez que intento hacer este tipo de cosas. ¿Mi enfoque no es una buena práctica? ¿Qué recomendarías? Creé otra pregunta de StackOverflow para esto aquí: ¿Qué código de respuesta / estado debo enviar a una solicitud AJAX cuando hay un error de validación de usuario / formulario?
dataestaba siendo pasa al método de error, pero en realidadjqXHR,textStatusyerrorThrown