HTTP
El idioma de pedido y respuesta que hablan los navegadores y los sitios web.
HTTP (HyperText Transfer Protocol) es el conjunto de reglas con el que un navegador y un servidor web se hablan. El navegador manda un pedido (dame esta página) y el servidor devuelve una respuesta (la página, o un error). Cada página, cada imagen y cada llamada a una API que usás corre sobre este ida y vuelta tan simple.
Un pedido tiene un método y una ruta. GET /menu significa traeme el menú; POST /pedido significa acá van datos, creá un pedido. La respuesta arranca con un código de estado: 200 es todo bien, 404 es no encontrado, 500 es que el servidor se rompió. Los dos llevan headers, notitas como el tipo de contenido, el idioma o una cookie que te identifica.
HTTP no tiene memoria: cada pedido va solo, y el servidor no recuerda el anterior, por eso existen las cookies y las sesiones. El HTTP pelado lo puede leer cualquiera que esté en el medio, así que hoy casi todo usa HTTPS, que es la misma conversación dentro de un túnel cifrado. Las versiones nuevas (HTTP/2 y HTTP/3) hacen el intercambio más rápido sin cambiar lo que pedís.
Para quedarse
- Un pedido tiene un método (
GET,POST...) y una ruta; una respuesta tiene un código (200,404,500). - HTTP no guarda estado: las cookies son la forma en que un sitio te recuerda entre pedidos.
- HTTPS es HTTP con cifrado; la conversación es la misma, solo que protegida.
- La mayoría de las APIs de la web son pedidos HTTP que devuelven JSON en vez de páginas.
Para seguir leyendo
- Generalidades del protocolo HTTP (MDN)
- ¿Qué es HTTP? (Cloudflare)
- Protocolo de transferencia de hipertexto (Wikipedia)