Infografía Código de Estados. Llamados síncronos HTTP al servidor



Hablemos sobre los Verbos HTTP


Esta Infografía web es una guía visual para resumir y entender los conceptos de códigos y estados para ser un pro en PROGRAMACIÓN WEB II

1. Verbos HTTP: Las Acciones de la Web

Los verbos HTTP, o métodos, definen la acción que se desea realizar sobre un recurso en el servidor. Son el lenguaje fundamental de las interacciones en la web.

Cliente
[VERBO] /recurso
Servidor

GET

Acción: Recuperar datos de un recurso específico. Es una operación de solo lectura.

Caso de uso: Cargar la página de un blog, obtener la lista de productos en una tienda online.

POST

Acción: Enviar datos para crear un nuevo recurso en el servidor.

Caso de uso: Publicar un nuevo comentario, registrar un nuevo usuario, realizar una compra.

PUT

Acción: Actualizar un recurso existente de forma completa. Reemplaza toda la entidad.

Caso de uso: Editar el perfil completo de un usuario, reemplazar un documento.

DELETE

Acción: Eliminar un recurso específico del servidor.

Caso de uso: Borrar una publicación, eliminar un artículo del carrito de compras.

PATCH

Acción: Aplicar modificaciones parciales a un recurso. Solo actualiza los campos enviados.

Caso de uso: Cambiar solo el nombre de usuario, actualizar el estado de un pedido.

OPTIONS

Acción: Obtener las opciones de comunicación y los métodos permitidos para un recurso.

Caso de uso: Usado por los navegadores para las comprobaciones de CORS antes de peticiones complejas.

2. Propiedades Clave de los Verbos

Los verbos HTTP tienen dos propiedades importantes: la seguridad (no altera el estado del servidor) y la idempotencia (múltiples peticiones idénticas tienen el mismo efecto que una sola). Este gráfico compara estas propiedades para los verbos principales.

3. Códigos de Estado: La Respuesta del Servidor

Una vez que el servidor procesa la petición, devuelve un código de estado numérico que indica el resultado. Estos códigos se agrupan en cinco categorías.

1xx: Informativos

La petición fue recibida y el proceso continúa.

  • 100 Continue: El servidor ha recibido los encabezados y el cliente debe proceder a enviar el cuerpo de la petición.
  • 102 Processing: El servidor ha aceptado la petición completa, pero aún no la ha completado.

2xx: Éxito

La acción fue recibida, entendida y aceptada exitosamente.

  • 200 OK: La solicitud ha tenido éxito. Es la respuesta estándar para peticiones GET exitosas.
  • 201 Created: La solicitud ha tenido éxito y se ha creado un nuevo recurso como resultado.
  • 204 No Content: El servidor cumplió con la solicitud pero no necesita devolver un cuerpo de entidad.

3xx: Redirección

Se necesita tomar una acción adicional para completar la petición.

  • 301 Moved Permanently: El recurso solicitado ha sido movido permanentemente a una nueva URI.
  • 302 Found: El recurso reside temporalmente bajo una URI diferente.

4xx: Error del Cliente

La petición contiene una sintaxis incorrecta o no puede ser procesada.

  • 400 Bad Request: El servidor no pudo interpretar la solicitud debido a una sintaxis inválida.
  • 401 Unauthorized: Se requiere autenticación para obtener la respuesta.
  • 403 Forbidden: El cliente no tiene derechos de acceso al contenido.
  • 404 Not Found: El servidor no pudo encontrar el recurso solicitado.

5xx: Error del Servidor

El servidor falló al intentar cumplir una petición aparentemente válida.

  • 500 Internal Server Error: El servidor encontró una condición inesperada que le impidió cumplir con la solicitud.
  • 503 Service Unavailable: El servidor no está listo para manejar la petición (por sobrecarga o mantenimiento).

4. Distribución Típica de Códigos de Estado

En una aplicación web saludable, la gran mayoría de las respuestas son de éxito (2xx). Los errores del cliente (4xx) son comunes y deben ser manejados, mientras que los errores del servidor (5xx) deben ser raros y monitoreados de cerca.

Conclusión: ¿Por Qué es Crucial?

Mejora el Desarrollo y Debugging

Entender los verbos y códigos de estado es fundamental para un desarrollador. Permite construir APIs lógicas y predecibles (RESTful), y diagnosticar rápidamente problemas, ya sea un error en el código del cliente (4xx) o un fallo en el servidor (5xx).

Optimiza la Experiencia de Usuario

Manejar correctamente las respuestas HTTP se traduce en una mejor experiencia. Significa mostrar mensajes de error útiles en un 404, redirigir sin problemas con un 301, y asegurar que las acciones del usuario (como crear o borrar contenido) se reflejen de manera fiable en la interfaz.