AWS CloudFormation
User Guide (API Version 2010-05-15)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

Amazon API Gateway 方法集成

IntegrationAWS::ApiGateway::Method 资源的一个属性,它指定有关 Amazon API Gateway (API 网关) 方法调用的目标后端的信息。

语法

JSON

{ "CacheKeyParameters" : [ String, ... ], "CacheNamespace" : String, "Credentials" : String, "IntegrationHttpMethod" : String, "IntegrationResponses" : [ IntegrationResponse, ... ], "PassthroughBehavior" : String, "RequestParameters" : { 字符串字符串, ... }, "RequestTemplates" : { 字符串字符串, ... }, "Type" : String, "Uri" : String }

YAML

CacheKeyParameters: - 字符串 CacheNamespace: String Credentials: String IntegrationHttpMethod: String IntegrationResponses: IntegrationResponse PassthroughBehavior: String RequestParameters: 字符串字符串 RequestTemplates: 字符串字符串 Type: String Uri: String

属性

CacheKeyParameters

API 网关 将缓存其值的请求参数的列表。

Required: No

Type: List of String values

CacheNamespace

相关缓存参数的 API 特定的标记组。

Required: No

Type: String

Credentials

集成所需的凭证。要指定 API 网关 代入的 AWS Identity and Access Management (IAM) 角色,请指定角色的 Amazon 资源名称 (ARN)。要让调用方的身份通过请求传递,请指定 arn:aws:iam::*:user/*

要对 AWS Lambda (Lambda) 函数使用基于资源的权限,请不要指定此属性。使用 AWS::Lambda::Permission 资源可允许 API 网关 调用此函数。有关更多信息,请参阅 AWS Lambda Developer Guide 中的 允许 Amazon API Gateway 调用 Lambda 函数

Required: No

Type: String

IntegrationHttpMethod

集成的 HTTP 方法类型。

Required: Conditional。对于 Type 属性,如果您指定 MOCK,则此属性是可选的。对于所有其他类型,您必须指定此属性。

Type: String

IntegrationResponses

API 网关 在方法的后端处理完请求后提供的响应。API 网关 会拦截后端的响应,这样您能够控制 API 网关 呈现后端响应的方式。例如,您可以将后端状态代码映射到您定义的代码。

Required: No

Type: Amazon API Gateway Method Integration IntegrationResponse 列表

PassthroughBehavior

指示 API 网关 将请求传递到目标后端的时间。此行为取决于请求的 Content-Type 标头以及您是否为其定义了映射模板。

有关更多信息和有效值,请参阅 API 网关 API 参考 中的 passthroughBehavior 字段。

Required: No

Type: String

RequestParameters

API 网关 随后端请求一起发送的请求参数。将请求参数指定为键/值对(字符串-字符串映射),并且目标作为键,源作为值。

使用 integration.request.location.name 模式指定目标,其中 locationquerystringpathheadername 是有效的唯一参数名。

源必须是现有方法请求参数或静态值。静态值必须用单引号引起来,并且基于其请求中的目标预先进行编码。

Required: No

类型:键值对的映射

RequestTemplates

对请求负载应用的 Apache Velocity 模板的映射。API 网关 使用的模板基于客户端发送的 Content-Type 标头的值。内容类型值为密钥,模板为值(指定为字符串),例如以下代码段:

"application/json": "{\n \"statusCode\": \"200\"\n}"

有关模板的更多信息,请参阅 API 网关 开发人员指南 中的 API 网关 API 请求和响应负载-映射模板参考

Required: No

类型:键值对的映射

Type

您的方法运行的后端的类型,如 HTTPMOCK。有关所有的有效值,请参阅 Amazon API Gateway REST API 参考 中的 Integration 资源的 type 属性。

Required: Yes

Type: String

Uri

集成的统一资源标识符 (URI)。

如果您为 Type 属性指定 HTTP,请指定 API 终端节点 URL。

如果您为 Type 属性指定 MOCK,则不要指定此属性。

如果为 Type 属性指定 AWS,请指定采用以下形式的 AWS 服务:arn:aws:apigateway:region:subdomain.service|service:path|action/service_api。例如,Lambda 函数 URI 采用以下形式:arn:aws:apigateway:region:lambda:path/path。路径通常采用以下形式:/2015-03-31/functions/LambdaFunctionARN/invocations。有关更多信息,请参阅 Amazon API Gateway REST API 参考中的集成资源的 uri 属性。

Required: Conditional。如果您为 Type 属性指定了 HTTPAWS,则必须指定此属性。

Type: String

本页内容: