Contenido

    Respuesta del servidor 400 Bad Request

    HTTP Status 400: Bad Request

    El código de estado HTTP 400 indica que el servidor no puede procesar la solicitud debido a un error de sintaxis. Esta respuesta puede surgir por diversas razones, y entender estas causas permite a los desarrolladores solucionar problemas de manera más efectiva.

    400 - Bad Request

    Causas de la Error 400

    • Sintaxis incorrecta en la solicitud

      Ejemplo: un URL mal formado.

    • Falta de parámetros obligatorios

      Ejemplo: ausencia de un parámetro en el cuerpo de la solicitud.

    • Datos incorrectos en los parámetros

      Ejemplo: enviar una cadena en lugar de un valor numérico.

    Ejemplos Prácticos

    1. Formato de datos incorrecto

      Ejemplo: envío de datos en formato JSON sin los encabezados correspondientes.

    2. URL demasiado largo

      Ejemplo: superar el límite de longitud de URL al enviar datos.

    3. Errores de codificación

      Ejemplo: uso de una codificación de caracteres no soportada.

    Corrección de Error 400 en Diferentes Lenguajes de Programación

    Lenguaje Código de Ejemplo
    JavaScript (Node.js)
    app.post('/api/data', (req, res) => {
        if (!req.body.name) {
            return res.status(400).send('El nombre es obligatorio');
        }
        // procesamiento de la solicitud
    });
    Python (Flask)
    from flask import Flask, request, jsonify
    
    app = Flask(__name__)
    
    @app.route('/api/data', methods=['POST'])
    def data():
        if 'name' not in request.json:
            return jsonify({'error': 'El nombre es obligatorio'}), 400
        // procesamiento de la solicitud
    
    PHP
    if (empty($_POST['name'])) {
        http_response_code(400);
        echo 'El nombre es obligatorio';
        exit;
    }
    // procesamiento de la solicitud

    Un manejo adecuado y diagnóstico de las causas de la error 400 permiten a los desarrolladores mejorar la calidad de sus aplicaciones y garantizar un funcionamiento más fluido al interactuar con las APIs.

    Códigos adicionales

    CódigoDescripción
    400.1Encabezado de destino no válido: el encabezado de destino en la solicitud es incorrecto.
    400.2Encabezado de profundidad no válido: el encabezado de profundidad no tiene el formato correcto.
    400.3Encabezado If no válido: el encabezado 'If' no es válido.
    400.4Encabezado de sobrescritura no válido: el encabezado de sobrescritura no es válido.
    400.5Encabezado de traducción no válido: el encabezado de traducción no es válido.
    400.6Cuerpo de solicitud no válido: el cuerpo de la solicitud es incorrecto.
    400.7Longitud de contenido no válida: el encabezado de longitud de contenido tiene un formato incorrecto.
    400.8Tiempo de espera no válido: el encabezado de tiempo de espera contiene un valor no válido.
    400.9Bloqueo no válido Token: el token de bloqueo en la solicitud no es válido.
    400.10Encabezado X-Forwarded-For (XFF) no válido: el encabezado XFF tiene un formato incorrecto.
    400.11Solicitud de WebSocket no válida: la solicitud de WebSocket no es válida.
    400.601Solicitud de cliente incorrecta (ARR): la solicitud de cliente tiene un formato incorrecto.
    400.602Formato de hora no válido (ARR): el formato de hora es incorrecto.
    400.603Error de rango de análisis (ARR): el rango no se puede analizar.
    400.604Cliente desaparecido (ARR): el cliente se ha desconectado.
    400.605Número máximo de reenvíos (ARR): se ha alcanzado el número máximo de reenvíos.
    400.606Error de competencia asincrónica (ARR) - Se produjo un error debido a una competencia asincrónica.