关于 AWS API Gateway V1, 写过一篇笔记 Lambda + API Gateway 创建需 API Key 验证的 API。 AWS 又推出了 API Gateway V2(服务管理/理解层面), 它同样可以用来作 HTTP-PROXY 调用 REST API, WebSocket; AWS-PROXY 调用 Lambda, 还能直接调用 AWS 的其他服务,如 StepFunction, SQS 等。
但是 API Gateway V2 把 V1 中的 API Key 验证功能去掉了,这有点为了赚钱耍无赖了,先前是 API Key 验证不过时不会调用 Lambda, 现在可用 Lambda 来验证 API 调用,也就是不管 API Key 对与不对,都会去调用 Lambda 从而实现从你的帐户上扣钱的功能。
在 V1 中创建整套服务的过程基本是 Resource -> Method -> Integration -> Stage。而在 V2 中的过程是 Integration -> Route -> Stage, 把 Resource 和 Method 合而为一,比如 Route Key 写成 GET /users
.
下面照旧以 Terraform 的方式来叙述使用 API Gateway V2 如何实现 HTTP 代理,调用 Lambda, 及使用 AWS 服务(以 SQS 为例),或与 VPC 内部的服务集成。首先是一个基本的框架,含 API 本身和 Stage 阅读全文 >>