教程:利用私有集成创建 REST API
您可以使用私有集成创建 API Gateway API 向客户提供对您 Amazon Virtual Private Cloud (Amazon VPC) 中 HTTP/HTTPS 资源的访问。此类 VPC 资源是位于 VPC 中网络负载均衡器之后的 EC2 实例上的 HTTP/HTTPS 终端节点。网络负载均衡器封装 VPC 资源并将传入请求路由到目标资源。
客户端调用 API 时,API Gateway 通过预置的 VPC 链接连接到网络负载均衡器。VPC 链接由 VpcLink 的 API Gateway 资源封装。它负责将 API 方法请求转发到 VPC 资源,并将后端响应返回到调用方。对于 API 开发人员,VpcLink
的功能等同于集成终端节点。
要使用私有集成创建 API,您必须创建新的 VpcLink
,或者选择已连接到针对所需 VPC 资源的网络负载均衡器的现有链接。您必须具有合适的权限以创建和管理 VpcLink
。然后,您设置 API 方法并将其集成到 VpcLink
,方法是将 HTTP
或 HTTP_PROXY
设置为集成类型,将 VPC_LINK
设置为集成连接类型,并在集成 VpcLink
上设置 connectionId
标识符。
注意
网络负载均衡器和 API 必须归同一个AWS账户所有。
为快速开始创建 API 以访问 VPC 资源,我们将引导您完成必需步骤,通过 API Gateway 控制台使用私有集成来构建 API。开始创建 API 之前,请执行以下操作:
-
创建 VPC 资源,在相同区域中您的账户下创建或选择网络负载均衡器,然后添加 EC2 实例,该实例托管了作为网络负载均衡器目标的资源。有关更多信息,请参阅 为 API Gateway 私有集成设置网络负载均衡器。
-
授予权限,为私有集成创建 VPC 链接。有关更多信息,请参阅 授予 API Gateway 创建 VPC 链接的权限。
创建您的 VPC 资源并使用在此目标组中配置的 VPC 资源创建网络负载均衡器之后,按照以下说明创建 API,并在私有集成中通过 VpcLink
将其与 VPC 资源集成。
使用私有集成创建 API
通过以下网址登录到 Amazon API Gateway 控制台:https://console.aws.amazon.com/apigateway
。 -
如果您是第一次使用 API Gateway,您会看到一个介绍服务特征的页面。在 REST API 下,选择生成。当创建示例 API 弹出框出现时,选择确定。
如果这不是您首次使用 API Gateway,请选择创建 API。在 REST API 下,选择生成。
创建边缘优化或区域性 REST API。
-
选择您的 API。
-
选择创建方法,然后执行以下操作:
对于方法类型,选择
GET
。对于集成类型,选择 VPC 链接。
打开 VPC 代理集成。
对于 HTTP 方法,选择
GET
。对于 VPC 链接,选择 [使用阶段变量],然后在下面的文本框中输入
${stageVariables.vpcLinkId}
。在将 API 部署到阶段之后,您定义
vpcLinkId
阶段变量,并将其值设置为VpcLink
的 ID。对于端点 URL,输入 URL,例如
http://myApi.example.com
。此处,主机名(例如
myApi.example.com
)用于设置集成请求的标头Host
。选择创建方法。
通过代理集成,已准备好部署 API。否则,您需要继续设置适当的方法响应和集成响应。
选择部署 API,然后执行以下操作:
对于阶段,选择新建阶段。
对于阶段名称,输入阶段名称。
(可选)对于描述,输入描述。
选择部署。
-
在阶段详细信息部分下,记下生成的调用 URL。您需要它来调用 API。执行此操作前,您必须设置
vpcLinkId
阶段变量。 -
在阶段窗格中,选择阶段变量选项卡,然后执行以下操作:
选择管理变量,然后选择添加阶段变量。
-
对于名称,请输入
vpcLinkId
。 -
对于值,输入
VPC_LINK
的 ID,例如
。gix6s7
-
选择保存。
使用阶段变量,您可以通过更改阶段变量值,轻松地切换到 API 的不同 VPC 链接。