cultura de Internet XI
Benjamin Ignacio Palma Cifuentes - Estudiante de Duoc Uc
Luis Felipe Ramirez - Profesor de Carrera
Cultura de Internet XI
Resumen
El contenido presenta una guía completa y estructurada sobre los códigos de estado HTTP, fundamentales para la comunicación entre clientes (navegadores) y servidores web. Se explican las cinco familias de códigos: 1XX (Informativo), que indican que la solicitud fue recibida y el servidor continúa procesándola; 2XX (Éxito), que confirman que la solicitud fue entendida y procesada correctamente; 3XX (Redirección), que señalan que el cliente debe realizar una acción adicional, como acceder a otra URL; 4XX (Error del cliente), que informan problemas originados en la solicitud del usuario (como recursos no encontrados o mala sintaxis); y 5XX (Error del servidor), que indican fallos internos del servidor al procesar una solicitud válida. Cada código se detalla con su significado y caso de uso específico, incluyendo códigos estándar, propios de WebDAV y curiosidades como el 418 "I'm a teapot". El material incluye referencias a fuentes oficiales como MDN Web Docs, Cloudflare y Wikipedia, y está presentado con un diseño temático japonés Ukiyo-e, animaciones visuales y una burbuja interactiva que sigue al puntero, integrando aprendizaje técnico con una experiencia estética atractiva.
Cultura de Internet XI
Cultura de Internet XI
1XX
100 Continue: Indica que el servidor ha recibido los encabezados de la solicitud y que el cliente puede continuar enviando el cuerpo de la solicitud (útil para subir archivos grandes o datos en varias partes).
101 Switching Protocols: El servidor acepta el cambio de protocolo solicitado por el cliente a través del encabezado Upgrade (por ejemplo, cambiar de HTTP a WebSockets).
102 Processing: El servidor ha recibido la solicitud y aún la está procesando, pero aún no hay respuesta disponible (evita que el cliente cierre la conexión por timeout). Es un código propio de WebDAV.
103 Early Hints: El servidor envía algunos encabezados de respuesta antes de que el mensaje completo esté listo, permitiendo que el cliente empiece a cargar recursos (por ejemplo, precargar CSS o JS) mientras el servidor genera el resto de la respuesta.
"Son respuestas de carácter informativo e indican que el navegador puede continuar con la petición."
Fuente: LucusHost Blog (Enlace 1)
Cultura de Internet XI
2XX
200 OK: La solicitud ha tenido éxito. El significado del éxito depende del método HTTP utilizado: GET devuelve el recurso solicitado, POST devuelve el resultado de la acción, HEAD devuelve los encabezados, etc.
201 Created: La solicitud ha sido satisfecha y ha resultado en la creación de un nuevo recurso. El servidor debe incluir la ubicación del nuevo recurso en el encabezado Location.
202 Accepted: La solicitud ha sido aceptada para procesamiento, pero este no se ha completado. Es útil para operaciones asíncronas donde el servidor procesará la solicitud más tarde.
203 Non-Authoritative Information: La respuesta proviene de un proxy o caché, no del servidor original, pero es válida. El agente usuario debe saber que no es la respuesta original del servidor.
204 No Content: La solicitud se ha completado con éxito, pero el servidor no envía contenido en el cuerpo de la respuesta. Útil para operaciones como guardar o eliminar sin necesidad de actualizar la vista.
205 Reset Content: Indica que el servidor ha completado la solicitud y el agente usuario debe restablecer la vista que originó la solicitud (por ejemplo, limpiar un formulario).
206 Partial Content: El servidor envía solo una parte del recurso solicitado, como respuesta a una solicitud con el encabezado Range. Es usado para reanudar descargas o cargar contenido por partes.
207 Multi-Status: Propio de WebDAV. Transmite múltiples respuestas independientes en un solo cuerpo XML, útil cuando se realizan varias operaciones a la vez.
208 Already Reported: También de WebDAV. Los miembros de un enlace ya han sido reportados previamente, evitando listarlos de nuevo en una respuesta de lista.
226 IM Used: El servidor ha completado la solicitud y la respuesta es una representación del resultado de una o más manipulaciones de instancia aplicadas a la instancia actual.
"Respuestas satisfactorias (200 - 299) ... Los códigos de estado de respuesta HTTP indican si se ha completado satisfactoriamente una solicitud HTTP específica."
Fuente: MDN Web Docs - Mozilla (Enlace 3)
Cultura de Internet XI
3XX
300 Multiple Choices: La solicitud tiene múltiples respuestas posibles. El usuario o el agente usuario debe elegir una de ellas. El servidor puede incluir una lista de opciones para que el usuario seleccione.
301 Moved Permanently: El recurso solicitado ha sido movido de forma permanente a una nueva URL. El servidor debe incluir la nueva URL en el encabezado Location. Los clientes deben actualizar sus enlaces (marcadores, caché, etc.).
302 Found: El recurso solicitado se encuentra temporalmente en otra URL. El cliente debe usar la misma URL original para futuras solicitudes, pero la actual debe redirigirse a la URL proporcionada en Location.
303 See Other: El servidor redirige al cliente a otra URL usando el método GET. Se usa típicamente después de un POST para evitar el reenvío accidental del formulario al recargar la página.
304 Not Modified: Indica que el recurso no ha sido modificado desde la última solicitud del cliente. El cliente puede usar su versión en caché. No incluye cuerpo en la respuesta.
305 Use Proxy: El recurso solicitado debe ser accedido a través del proxy indicado en el encabezado Location. Este código está obsoleto por razones de seguridad.
306 Switch Proxy: Código reservado pero ya no se usa. Originalmente significaba "seguir usando el proxy". Actualmente no está en uso y ha sido eliminado de las especificaciones modernas.
307 Temporary Redirect: Similar al 302, pero garantiza que el método HTTP (GET, POST, etc.) no será cambiado cuando se realice la redirección. El recurso se encuentra temporalmente en otra URL.
308 Permanent Redirect: Similar al 301, pero garantiza que el método HTTP no será cambiado al redirigir. El recurso ha sido movido permanentemente a una nueva URL.
"Estos códigos HTTP hacen referencia a cuando el navegador tiene que realizar una acción adicional como, por ejemplo, una redirección 301."
Fuente: LucusHost Blog (Enlace 1)
Cultura de Internet XI
4XX
400 Bad Request: El servidor no puede procesar la solicitud debido a un error del cliente, como sintaxis mal formada, encabezados incorrectos, o tamaño de solicitud demasiado grande. El cliente debe corregir la solicitud antes de reintentar.
401 Unauthorized: La solicitud requiere autenticación del usuario. El servidor debe enviar un encabezado WWW-Authenticate indicando el método de autenticación (por ejemplo, Basic o Bearer).
402 Payment Required: Código reservado para uso futuro originalmente pensado para pagos digitales. Actualmente no está estandarizado, pero algunos servicios lo usan para indicar solicitudes que requieren pago.
403 Forbidden: El servidor entendió la solicitud, pero se niega a autorizarla. A diferencia del 401, la autenticación no ayudará. El acceso al recurso está prohibido permanentemente.
404 Not Found: El servidor no pudo encontrar el recurso solicitado. Es el error más común cuando una URL no existe. También puede usarse para ocultar la existencia de un recurso por razones de seguridad.
405 Method Not Allowed: El método HTTP usado (GET, POST, PUT, etc.) no está permitido para el recurso solicitado. El servidor debe incluir el encabezado Allow con los métodos permitidos.
406 Not Acceptable: El servidor no puede generar una respuesta que sea aceptable según los encabezados Accept enviados por el cliente (como Accept-Language, Accept-Encoding, etc.).
407 Proxy Authentication Required: Similar al 401, pero la autenticación debe realizarse con el proxy. El proxy debe enviar un encabezado Proxy-Authenticate.
408 Request Timeout: El servidor cerró la conexión o no esperó lo suficiente porque el cliente no envió una solicitud completa en el tiempo límite establecido.
409 Conflict: La solicitud no pudo completarse debido a un conflicto con el estado actual del recurso, como un conflicto de edición en un sistema de control de versiones.
410 Gone: Similar al 404, pero el recurso solía existir y ha sido eliminado permanentemente sin una dirección de redirección. El servidor no conoce una URL alternativa.
411 Length Required: El servidor rechaza la solicitud porque no incluye el encabezado Content-Length, que es obligatorio para este recurso o método.
412 Precondition Failed: Una o más condiciones especificadas en los encabezados de la solicitud (como If-Match, If-Unmodified-Since) no se cumplieron en el servidor.
413 Payload Too Large: El cuerpo de la solicitud es más grande de lo que el servidor está dispuesto o capaz de procesar. El servidor puede cerrar la conexión.
414 URI Too Long: La URL solicitada es demasiado larga para que el servidor la procese. Suele ocurrir cuando se envían demasiados datos en la URL mediante GET.
415 Unsupported Media Type: El formato del cuerpo de la solicitud no es soportado por el servidor para el recurso o método especificado. El servidor debe indicar los formatos aceptados.
416 Range Not Satisfiable: El encabezado Range enviado por el cliente no puede ser satisfecho porque el rango solicitado no se superpone con el tamaño del recurso.
417 Expectation Failed: El servidor no puede cumplir con la expectativa indicada en el encabezado Expect (por ejemplo, "100-continue").
418 I'm a teapot: Código de broma del RFC 2324 (Hyper Text Coffee Pot Control Protocol). Indica que el servidor es una tetera y no puede preparar café. No es oficial pero es conocido como Easter egg.
421 Misdirected Request: La solicitud fue dirigida a un servidor que no puede producir una respuesta para esa combinación de esquema, autoridad y puerto. Usado en HTTP/2.
422 Unprocessable Entity: Propio de WebDAV. El servidor entendió el tipo de contenido de la solicitud, pero no pudo procesar las instrucciones semánticas contenidas en ella.
423 Locked: Propio de WebDAV. El recurso al que se accede está bloqueado (lock). El cliente debe esperar o solicitar el desbloqueo.
424 Failed Dependency: Propio de WebDAV. La solicitud falló porque dependía de otra solicitud que también falló.
425 Too Early: El servidor se niega a procesar una solicitud que podría ser repetida para evitar un ataque de repetición. Relacionado con el encabezado Early-Data.
426 Upgrade Required: El servidor rechaza la solicitud con el protocolo actual, pero está dispuesto a hacerlo si el cliente cambia a un protocolo diferente. El servidor debe enviar el encabezado Upgrade.
428 Precondition Required: El servidor requiere que la solicitud sea condicional (por ejemplo, incluir If-Match) para evitar conflictos de actualización en recursos que pueden ser modificados por múltiples clientes.
429 Too Many Requests: El cliente ha enviado demasiadas solicitudes en un período de tiempo dado. Se usa para limitar la tasa de peticiones (rate limiting). El servidor puede incluir encabezados Retry-After.
431 Request Header Fields Too Large: Los encabezados de la solicitud son demasiado grandes (ya sea individualmente o en total). El cliente debe reducir el tamaño de los encabezados antes de reintentar.
451 Unavailable For Legal Reasons: El servidor no puede proporcionar el recurso debido a restricciones legales (por ejemplo, censura por orden judicial). El número 451 hace referencia a la novela Fahrenheit 451 sobre censura.
"Códigos 4XX- Estos son códigos de error que indican un problema con la solicitud enviada desde el cliente (navegador)."
Fuente: SiteGround Knowledge Base (Enlace 4)
Cultura de Internet XI
5XX
500 Internal Server Error: El servidor encontró una situación inesperada que le impide completar la solicitud. Es el error genérico del servidor cuando no existe un código más específico.
501 Not Implemented: El servidor no soporta la funcionalidad necesaria para completar la solicitud. Por ejemplo, si el servidor no reconoce el método HTTP utilizado (como un DELETE en un servidor que solo acepta GET y POST).
502 Bad Gateway: El servidor actuando como puerta de enlace o proxy recibió una respuesta inválida del servidor ascendente (upstream) al intentar procesar la solicitud.
503 Service Unavailable: El servidor no está listo para manejar la solicitud debido a una sobrecarga temporal o mantenimiento. El cliente debe reintentar más tarde. El servidor puede incluir un encabezado Retry-After.
504 Gateway Timeout: El servidor actuando como puerta de enlace o proxy no recibió una respuesta a tiempo del servidor ascendente (upstream).
505 HTTP Version Not Supported: El servidor no soporta o se niega a soportar la versión del protocolo HTTP utilizada en la solicitud.
506 Variant Also Negotiates: Error de negociación de contenido. El servidor tiene una configuración circular donde la variante elegida apunta a sí misma, causando un bucle infinito.
507 Insufficient Storage: Propio de WebDAV. El servidor no puede almacenar la representación necesaria para completar la solicitud porque ha alcanzado su límite de espacio en disco.
508 Loop Detected: Propio de WebDAV. El servidor detectó un bucle infinito al procesar una solicitud con profundidad (como al seguir enlaces).
510 Not Extended: El servidor requiere extensiones adicionales en la solicitud que no fueron proporcionadas. Relacionado con el protocolo HTTP Extension Framework.
511 Network Authentication Required: El cliente necesita autenticarse para obtener acceso a la red. Es común en redes cautivas (captive portals) como las de aeropuertos o cafeterías donde primero debes iniciar sesión o aceptar términos.
"Códigos 5XX, Errores originados en el servidor de la web que impiden el envío de una respuesta válida."
Fuente: SiteGround Knowledge Base (Enlace 4)
Cultura de Internet XI
Conclusión
1XX (Informativo): Indican que la solicitud ha sido recibida y el servidor continúa procesándola. Son respuestas provisionales que permiten al cliente saber que el servidor está trabajando en la solicitud antes de enviar una respuesta final. No reemplazan a una respuesta definitiva.
2XX (Éxito): Indican que la solicitud del cliente fue recibida, entendida y procesada correctamente por el servidor. La acción solicitada se completó con éxito. El significado exacto depende del método HTTP utilizado (GET, POST, PUT, etc.).
3XX (Redirección): Indican que el cliente necesita realizar una acción adicional para completar la solicitud, generalmente accediendo a otra URL. Esto puede ser porque el recurso se movió permanentemente, está temporalmente en otra ubicación, o porque se necesita seguir un enlace diferente.
4XX (Error del cliente): Indican que el servidor no pudo procesar la solicitud debido a un error cometido por el cliente. Esto incluye sintaxis incorrecta, autenticación fallida, recursos inexistentes (404), métodos no permitidos, o cualquier situación donde el cliente envía algo mal formado o no autorizado.
5XX (Error del servidor): Indican que el servidor no pudo completar una solicitud válida debido a un error interno. El cliente hizo todo correctamente, pero el servidor falló al procesar la solicitud por problemas como sobrecarga, fallos internos, timeouts, o falta de implementación de alguna funcionalidad.