Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

197
Vistas
Anulando jQuery default ajaxError para un código de estado específico

Estoy tratando de implementar un controlador de errores HTTP predeterminado de jQuery para llamadas AJAX. Implementé el controlador de errores predeterminado para errores de aplicaciones genéricas de la siguiente manera:

 $(document).ajaxError(function(event, jqXHR, settings, thrownError) { switch (jqXHR.status) { case 403: console.log('Forbidden, go away!'); break; case 404: console.log('Resource not found :O'); break; case 422: console.log('Unprocessable entity.'); break; case 500: console.log('Someone have to pay for this!'); break; default: console.log('Anyone knows what is going on here?'); } });

Ahora, lo que me gustaría lograr es anular un código de estado específico dentro de una sola llamada AJAX. Como por ejemplo

 $.ajax({ ... error: function(jqXHR, textStatus, errorThrown) { if(jqXHR.status === 404){ console.log('The requested unicorn is actually missing'); } } })

En este momento, si implemento como se muestra arriba, se mostrarán ambos mensajes

 >The requested unicorn is actually missing >Resource not found :O

mientras solo intento obtener el mensaje The requested unicorn is actually missing .

Establecer global: false en la configuración de llamada AJAX única implica ignorar todas las funciones AJAX globales dentro de esa llamada AJAX y, lamentablemente, esa no es una solución viable para mi aplicación.

¿Alguna idea? ¡Gracias!

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

puedes hacer lo siguiente

 $.ajax({ handleErrors: [404], ... error: function(jqXHR, textStatus, errorThrown) { if(jqXHR.status === 404){ console.log('The requested unicorn is actually missing'); } } });

luego, en su controlador global, verifique si se maneja el error

 $(document).ajaxError(function(event, jqXHR, settings, thrownError) { if (settings.handleErrors && settings.handleErrors.indexOf(jqXHR.status) !== -1) { return; } switch (jqXHR.status) { case 403: console.log('Forbidden, go away!'); break; case 404: console.log('Resource not found :O'); break; case 422: console.log('Unprocessable entity.'); break; case 500: console.log('Someone have to pay for this!'); break; default: console.log('Anyone knows what is going on here?'); } });
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda