Estados HTTP: Entendiendo las respuestas del servidor
▸ fundamentos-web/estados-httpCuando navegamos por internet e interactuamos con páginas web, los servidores web nos envían respuestas cada vez que realizamos una solicitud. Estas respuestas no solo contienen el contenido que queremos ver, sino también un código de estado HTTP que indica si la solicitud fue exitosa o si hubo algún problema.
Los códigos de estado HTTP son esenciales para entender lo que ocurre entre el cliente (tu navegador) y el servidor (donde está alojada la web). Vamos a explorar qué significan y cómo nos ayudan a comprender mejor la comunicación en la web.
¿Qué es un estado HTTP?
Cada vez que un navegador o aplicación web realiza una solicitud a un servidor, este responde con un código de estado. Este código es un número de tres cifras que proporciona información sobre el resultado de la solicitud. Dependiendo del número, podemos saber si todo salió bien, si hubo un error o si hay que hacer algún paso adicional.
Estos códigos se agrupan en cinco categorías principales:
- 100 - 199: Respuestas informativas
- 200 - 299: Respuestas exitosas
- 300 - 399: Redirecciones
- 400 - 499: Errores del cliente
- 500 - 599: Errores del servidor
Respuestas informativas (100 - 199)
Estos códigos indican que la solicitud fue recibida y que el servidor está procesándola, pero aún no ha terminado. Son poco comunes en el día a día, pero es bueno conocerlos.
- 100 Continue: El servidor recibió la solicitud y el cliente puede continuar enviando datos.
- 101 Switching Protocols: Indica que el servidor cambiará a otro protocolo solicitado por el cliente.
Respuestas exitosas (200 - 299)
Estos códigos indican que la solicitud se procesó correctamente.
- 200 OK: Todo salió bien y el servidor responde con el contenido solicitado.
- 201 Created: Se creó un nuevo recurso en el servidor (por ejemplo, un usuario registrado).
- 204 No Content: La solicitud fue exitosa, pero el servidor no devuelve contenido.
Redirecciones (300 - 399)
Estos códigos indican que la solicitud debe dirigirse a otra ubicación o realizar otro paso antes de completarse.
- 301 Moved Permanently: La página se ha movido permanentemente a una nueva dirección.
- 302 Found: La página está temporalmente en otra dirección.
- 304 Not Modified: Indica que el contenido no ha cambiado, por lo que se puede usar una versión almacenada en caché.
Errores del cliente (400 - 499)
Estos códigos indican que hubo un problema con la solicitud enviada por el cliente (el navegador o la aplicación).
- 400 Bad Request: La solicitud es incorrecta o tiene errores.
- 401 Unauthorized: Se necesita autenticación para acceder al recurso.
- 403 Forbidden: No tienes permiso para acceder al recurso.
- 404 Not Found: La página o recurso solicitado no existe.
Errores del servidor (500 - 599)
Estos códigos indican que el problema está en el servidor y no en la solicitud del cliente.
- 500 Internal Server Error: Un error general en el servidor.
- 502 Bad Gateway: Un servidor recibió una respuesta inválida de otro servidor.
- 503 Service Unavailable: El servidor está sobrecargado o en mantenimiento.
¿Por qué es importante conocer los estados HTTP?
Saber interpretar los códigos de estado HTTP es útil tanto para usuarios como para desarrolladores:
- Si ves un 404 Not Found, sabes que la página no existe.
- Un 500 Internal Server Error indica un problema del servidor y no del usuario.
- Un 301 Moved Permanently ayuda a entender por qué una URL redirige a otra.