¿Cómo manejar el error HTTP específico para todas las llamadas AJAX?

Tengo una aplicación web, solicitando y enviando datos a través de AJAX, y como respuesta, mi servidor envía códigos de estado HTTP, según la situación. Así, por ejemplo, si un usuario intenta iniciar sesión mientras está conectado, probablemente devuelvo una400 HTTP status code. Y eventualmente lo manejo con una alerta, etc.

Pero el manejo de estos códigos de estado HTTP es demasiado pesado, ya que estoy haciendo un uso intensivo de AJAX. eso significa que manejaré el código de estado HTTP repetidamente con cada solicitud AJAX, lo que resultará en un código duplicado, y esa es una mala práctica.

Asi que,lo que estoy buscando es una forma de manejar todos estos errores en un solo lugar, así que solo manejo todos400, 401, etc. con el mismo código.

Lo que estoy haciendo actualmente:

Manejando los errores manualmente para cada llamada AJAX. Utilizando elstatusCode en$.ajax().

  statusCode: {
        500: function(data) {
            alert('Some friendly error message goes here.');
        }

Me parece una exageración, ya que mi aplicación web se desarrolla y cuando creo más llamadas ajax. Repetiré esta pieza de código una y otra vez.

Actualmente, la única idea que tengo en mente es crear una función que funcione sobre AJAX, algo como:

    function doAjax(type,url, data, moreVars) {
//this function is just a SIMPLE example, could be more complex and flexible.
        $.ajax({
            type: type,
            url: url,
            data: data,
            moreOptions:moreVars,
            //now handling all status code.
            statusCode: {
                //handle all HTTP errors from one place.
            }
        });
    }

    doAjax("POST", 'mydomain.com/login.php', dataObj);

Respuestas a la pregunta(1)

Su respuesta a la pregunta