412

Precondition Failed

Oficial Códigos de subestado
Las condiciones previas no eran satisfactorias, la solicitud no prosperó

Especificación del código de estado HTTP 412

El código de estado 412 Precondition Failed indica que una o más condiciones dadas en los campos de cabecera de la solicitud se evaluaron como falsas cuando se probaron en el servidor. Este código de respuesta permite al cliente establecer condiciones previas sobre el estado actual del recurso (sus representaciones y metadatos actuales) y, de este modo, evitar que se aplique el método de solicitud si el recurso de destino se encuentra en un estado inesperado.

El código de estado 412 Precondition Failed indica que una de las condiciones dadas en los campos de cabecera de la solicitud resultó falsa al comprobarse en el servidor.

Fuente / Cita de: El código de estado HTTP 412 Precondition Failed se especifica en la sección 4.2 de RFC7232.

¿Cómo lanzar un código de estado 412 con PHP?

Para lanzar el código de estado HTTP 412 en una página web, se puede utilizar la función PHP http_response_code. La sintaxis es la siguiente: http_response_code(412) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Probar el código de estado HTTP 412

Para poder mostrar el código de estado HTTP (en este caso 412 Precondition Failed) y otra información en el lado del cliente, debe abrirse la consola de desarrollo con F12. A continuación, vaya a la pestaña "Red". Ahora se puede abrir la página, el sitio web (ejemplo index.php) debe ser visible en la pestaña de red. Esta debe ser seleccionada y luego la sección Herder debe ser seleccionada. El usuario verá entonces el siguiente resultado:

Código de estado 412 Precondition Failed
Visión general
URL: https://http-statuscode.com/errorCodeExample.php?code=412
Estado: 412 Precondition Failed
Esos: Network
Dirección IP: XX.XX.XX.XX
Código de estado 412 Precondition Failed

¿Cómo puedo solucionar el problema del código de estado 412?

1. entender la causa

Comprueba la cabecera de la precondición: Primero identifica qué precondición se estableció en la cabecera de tu petición y no se cumplió. Podría tratarse de un If-Match, If-None-Match, If-Modified-Since, If-Unmodified-Since o un If-Range header.

2. Comprobación de los metadatos del recurso

E-Tag y Last-Modified header: Compruebe los metadatos del recurso solicitado. Compare el valor de E-Tag o la fecha de Last-Modified del recurso con el valor especificado en la solicitud para identificar discrepancias.

3. Corregir la solicitud

Ajustar las cabeceras: si la comprobación muestra que los valores de las cabeceras de condición de la solicitud no coinciden con el estado actual del recurso, ajústelos en consecuencia.

Eliminar cabeceras innecesarias: en algunos casos, puede ser útil eliminar ciertas cabeceras condicionales si no son absolutamente necesarias para la petición.

4. Gestión de la caché

Comprobación de la caché: asegúrese de que la petición no se ve afectada por un estado de caché del recurso. Si es necesario, borre la caché o utilice las cabeceras Cache-Control para eludir la caché.

5. Configuración del servidor

Comprobación de la configuración: compruebe si existen reglas o configuraciones especiales en el servidor que puedan provocar este problema, especialmente en relación con el procesamiento de solicitudes condicionales.

6. Comunicación con el desarrollador de la API/servidor

Documentación y soporte: si el problema persiste, consulte la documentación de la API o del servidor y, si es necesario, póngase en contacto con el soporte o con la comunidad de desarrolladores para obtener más ayuda.

7. Tratamiento de errores en la aplicación

Manejo robusto de errores: implemente un manejo robusto de errores en su aplicación para responder adecuadamente al código de estado 412 Precondition Failed, por ejemplo, reenviando la solicitud con cabeceras personalizadas o notificando el error al usuario.

8. Pruebas y monitorización

Pruebas exhaustivas: pruebe su aplicación en diversas condiciones para asegurarse de que responde correctamente a los errores 412 Precondition Failed.

Monitorización: utilice herramientas de monitorización para detectar y analizar este tipo de errores, de modo que pueda reaccionar de forma proactiva ante los problemas.

Prevención de errores.

Cómo crear su propia página de error para el código de estado 412

Crear su propia página de error 412 Precondition Failed es relativamente fácil con los servidores web "Apache" y "NGINX".

Apache Webserver

El servidor web "Apache" es uno de los más comunes en Internet. Para crear su propia página de error 412 Precondition Failed en "Apache", se debe realizar el siguiente cambio en el siguiente archivo.

File: .htaccess
ErrorDocument 412 /errors/412.html

NGINX Webserver

Similar al servidor web "Apache", "NGINX" también se utiliza ampliamente en Internet. Para crear su propia página de error 412 Precondition Failed en "NGINX", es necesario realizar el siguiente cambio en el siguiente archivo.

File: sites-enabled/default
error_page 412 /412.html;
location = /412.html {
    root /usr/share/nginx/html;
    internal;
}

Compatibilidad del código de estado 412 con los navegadores

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Constantes en lenguajes de programación

HttpStatusCode.PreconditionFailed
http.StatusPreconditionFailed
Response::HTTP_PRECONDITION_FAILED
httplib.PRECONDITION_FAILED
http.client.PRECONDITION_FAILED
http.HTTPStatus.PRECONDITION_FAILED
:precondition_failed

Códigos de subestado del código de estado 412

Los subcódigos de estado son puramente técnicos y nunca deben enviarse al usuario. Por ejemplo, si se lanza el código de estado 412.1, se puede registrar, pero el código de estado 412 se enviará al usuario.:
412.0 Precondition failed
HTTP IIS, No oficial
Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser es un entusiasta desarrollador web aficionado a los códigos de estado HTTP.

LinkedInGitHub