HTTP: Protocolo de Transferencia de Hipertexto (Capa 7)
HTTP (HyperText Transfer Protocol) es el lenguaje que utilizan los navegadores (Chrome, Firefox, Safari) para solicitar información a los servidores web. Se encuentra en la Capa de Aplicación y, por lo general, utiliza el protocolo TCP (puerto 80 o 443) para asegurar que los datos lleguen sin errores.
1. El Modelo Cliente-Servidor
La comunicación HTTP siempre nace de una petición (Request) y termina con una respuesta (Response).
Cliente: El navegador del usuario. Dice: "Quiero ver la página index.html".
Servidor: El ordenador donde está la web. Responde: "Aquí tienes el código de la página" o "Esa página no existe".
2. Los Códigos de Estado
Cuando un servidor responde, envía un número (códigos) que indica qué ha pasado:
| Código | Significado | Ejemplo común |
| 2xx | Éxito | 200 OK (Todo ha ido bien). |
| 3xx | Redirección | 301 Moved Permanently (La web ha cambiado de sitio). |
| 4xx | Error del Cliente | 404 Not Found (Has escrito mal la URL). |
| 5xx | Error del Servidor | 500 Internal Server Error (El servidor se ha roto). |
3. Métodos HTTP (¿Qué queremos hacer?)
No siempre queremos solo "leer" una página. Los métodos más usados son:
GET: Pedir información (ver una web).
POST: Enviar información (rellenar un formulario de registro).
PUT/PATCH: Actualizar datos.
DELETE: Borrar algo.
4. HTTP vs HTTPS: La importancia de la seguridad
HTTP (Puerto 80): La información viaja en texto plano. Si alguien "escucha" el cable (sniffing), puede leer tus contraseñas.
HTTPS (Puerto 443): Es HTTP sobre una capa de cifrado (SSL/TLS). La información viaja encriptada y es ilegible para intrusos.
5. ¿Es un protocolo "con estado"?
No. HTTP es un protocolo sin estado (stateless). Cada petición es nueva y el servidor no recuerda quién eres de la petición anterior.
Pregunta: ¿Entonces cómo sabe Amazon que sigo logueado?
Respuesta: Gracias a las Cookies, que son pequeños archivos que el navegador envía en cada petición para "recordarle" al servidor quiénes somos.
Actividad práctica:
Abre el navegador, pulsa F12 (Herramientas de desarrollador) y ve a la pestaña Network. Al cargar una web, podrás ver en tiempo real todas las peticiones GET y los códigos 200 OK que devuelve el servidor.