Módulo 6 · Serverless/Lección 41
API Gateway: la puerta de tus APIs
Recibe las peticiones HTTP, las valida, las limita y las entrega a Lambda u otros servicios.
Una función Lambda sola no tiene dirección web. Para que un navegador o una app móvil la llamen, necesitas algo que reciba la petición HTTP, revise quién la hace, decida a qué función va y responda. Ese algo es Amazon API Gateway, un servicio administrado para crear, publicar, proteger y monitorear APIs.
Qué hace la puerta
- 1
Enruta
Cada combinación de método y ruta (GET /pedidos,POST /pedidos) apunta a un destino distinto. - 2
Autoriza
Revisa quién llama antes de que la petición llegue a tu código. Si no pasa, responde 401 o 403 y tu función ni se entera. - 3
Limita el tráfico
Aplica throttling: un máximo de peticiones por segundo con margen para ráfagas. Lo que excede recibe un error 429. - 4
Mide y cobra a clientes
Con planes de uso y llaves de API decides cuántas peticiones puede hacer cada cliente por día o por mes. - 5
Guarda en caché
En APIs REST, puede guardar respuestas un tiempo y devolverlas sin llamar al backend.
Tres formas de autorizar
Las llaves de API no son un método de autenticación seguro por sí solas: identifican a un cliente para los planes de uso, pero se pueden copiar. Úsalas junto con uno de los tres métodos de arriba.
HTTP, REST o WebSocket
| Criterio | HTTP API | REST API | WebSocket API |
|---|---|---|---|
| Para qué | APIs simples hacia Lambda o servicios HTTP | APIs que necesitan todas las funciones de gestión | Conexiones abiertas en dos sentidos |
| Costo y latencia | Menor costo y menor latencia | Más costo, más funciones | Se cobra por mensajes y minutos de conexión |
| Funciones clave | Autorizadores JWT (Cognito) y Lambda, IAM, CORS | Planes de uso, llaves de API, caché, validación de peticiones, integración con AWS WAF | El servidor puede enviar mensajes al cliente sin que pregunte |
| Ejemplo | Backend de una app móvil | API pública que vendes a otras empresas | Chat, tableros en vivo, juegos |
A dónde entrega las peticiones
- Lambda: el caso más común. API Gateway invoca la función de forma síncrona y devuelve su respuesta.
- HTTP: reenvía a otro servicio web, dentro o fuera de AWS. Con un VPC link llega a servicios privados de tu VPC.
- Servicios de AWS: puede escribir directo en una cola de SQS, publicar en SNS o iniciar una ejecución de Step Functions, sin una función en medio.
Para proteger la API contra ataques comunes, se combina con AWS WAF. Detalles en proteger el perímetro. Para el recorrido completo con Cognito y DynamoDB, sigue con una aplicación serverless completa.
Quiz
Pon a prueba lo que aprendiste
0 de 5 correctas · 5 sin responder
1.Un equipo necesita exponer sus funciones Lambda como una API HTTPS con autenticación y límites de tráfico. ¿Qué servicio usa?
2.Quieres que los usuarios inicien sesión en tu app móvil y que la API solo acepte a usuarios autenticados. ¿Qué combinas con API Gateway?
3.Una aplicación de chat necesita que el servidor envíe mensajes a los clientes sin que estos pregunten. ¿Qué tipo de API eliges?
4.Vendes acceso a tu API y cada cliente tiene un límite de peticiones al mes. ¿Qué función de API Gateway usas?
5.¿Qué hace API Gateway cuando un cliente supera el límite de peticiones por segundo?