Amazon API Gateway
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

使用 API Gateway 私有集成构建 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,您必须创建新的链接,或者选择已连接到针对所需 VPC 资源的负载均衡器的现有 VpcLink。您必须具有合适的权限以创建和管理 VpcLink。然后,您设置 API 方法并将其集成到 VpcLink,方法是将 HTTPHTTP_PROXY 设置为集成类型,将 VPC_LINK 设置为集成连接类型,并在集成 connectionId 上设置 VpcLink 标识符。

为快速开始创建 API 以访问 VPC 资源,我们将引导您完成必需步骤,通过 API Gateway 控制台使用私有集成来构建 API。开始创建 API 之前,请执行以下操作:

  1. 创建 VPC 资源,在相同区域中您的账户下创建或选择网络负载均衡器,然后添加 EC2 实例,该实例托管了作为网络负载均衡器目标的资源。有关更多信息,请参阅 为 API Gateway 私有集成设置网络负载均衡器

  2. 授予权限,为私有集成创建 VPC 链接。有关更多信息,请参阅 授予创建 VPC 链接的权限

创建您的 VPC 资源并使用在此目标组中配置的 VPC 资源创建网络负载均衡器之后,使用以下说明创建 API,并在私有集成中通过 VpcLink 将其与 VPC 资源集成。

使用 API Gateway 控制台通过私有集成创建 API

  1. 在导航栏上登录 API Gateway 控制台并选择区域;例如 us-west-2

  2. 如果尚未创建 VPC 链接,请创建:

    1. 从主导航窗格中选择 VPC Links,然后选择 + Create

    2. VPC Link 下的 Name 字段中,键入名称 (例如 my-test-vpc-link)。

    3. (可选) 在 Description 文本区域中提供 VPC 链接的说明。

    4. Target NLB 下拉列表中选择网络负载均衡器。

      您必须已经在所选区域中创建了网络负载均衡器,这样列表中才会显示网络负载均衡器。

    5. 选择 Create 以开始创建 VPC 链接。

    初始响应返回了 VpcLink 资源表示,带有 VPC 链接 ID 以及 PENDING 状态。这是因为操作是异步的,需要大约 2-4 分钟才能完成。成功完成时,状态为 AVAILABLE。同时,您可以继续创建 API。

  3. 从主导航窗格中选择 APIs,然后选择 + Create API 以创建边缘优化或区域终端节点类型的新 API。

  4. 对于根资源 (/),请从 Actions 下拉菜单中选择 Create Method,然后选择 GET

  5. / GET - Setup 窗格中,按以下所示初始化 API 方法集成:

    1. Integration type 选择 VPC Link

    2. 选择 Use Proxy Integration

    3. Method 下拉列表,选择 GET 作为集成方法。

    4. VPC Link 下拉列表中,选择 [Use Stage Variables] 并在下方文本框中键入 ${stageVariables.vpcLinkId}

      在将 API 部署到阶段之后,我们将定义 vpcLinkId 阶段变量,并将其值设置为在步骤 1 中创建的 VpcLink 的 ID。

    5. Endpoint URL 键入 URL,例如 http://myApi.example.com

      此处,主机名 (例如 myApi.example.com) 用于设置集成请求的标头 Host

    6. Use Default Timeout 选择原样保留,除非您希望自定义集成超时。

    7. 选择 Save 以完成设置集成。

      通过代理集成,已准备好部署 API。否则,您需要继续设置适当的方法响应和集成响应。

    8. Actions 下拉菜单,选择 Deploy API,然后选择新的或现有的阶段以部署到 API。

      记下生成的 Invoke URL。您需要它来调用 API。执行此操作前,您必须设置 vpcLinkId 阶段变量。

    9. Stage Editor 中,选择 Stage Variables 选项卡,然后选择 Add Stage Variable

      1. Name 列下,键入 vpcLinkId

      2. Value 列下,键入 VPC_LINK 的 ID,例如 gix6s7

      3. 选择对勾图标以保存此阶段变量。

        使用阶段变量,您可以通过更改阶段变量值,轻松地切换到 API 的不同 VPC 链接。

      这会完成创建 API。您可以测试通过其他集成调用 API。