Amazon API Gateway 以亚马逊规则为目标 EventBridge - Amazon EventBridge

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon API Gateway 以亚马逊规则为目标 EventBridge

您可以使用 Amazon API Gateway 来创建、发布、维护和监控APIs。Amazon EventBridge 支持向API网关终端节点发送事件。当您将API网关终端节点指定为目标时,发送到目标的每个事件都会映射到该终端节点的请求。

重要

EventBridge 支持使用API网关边缘优化区域端点作为目标。目前不支持私有端点。要了解端点的更多信息,请参阅 https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-endpoint-types.html

您可以将 API Gateway 目标用于以下用例:

  • 调用基于 AWS 或第三方事件在 API Gateway 中API托管的客户指定的事件。

  • 按计划定期调用端点。

EventBridge JSON事件信息作为HTTP请求正文发送到您的终端节点。您可以在目标的 HttpParameters 字段中指定其他请求属性,如下所示:

  • PathParameterValues例如,列出了与终端节点ARN中任何路径变量顺序对应的值。"arn:aws:execute-api:us-east-1:112233445566:myapi/dev/POST/pets/*/*"

  • QueryStringParameters表示 EventBridge 附加到调用端点的查询字符串参数。

  • HeaderParameters定义要添加到请求中的HTTP标头。

注意

出于安全考虑,不允许使用以下HTTP标头密钥:

  • 任何以 X-AmzX-Amzn 为前缀的标头密钥

  • Authorization

  • Connection

  • Content-Encoding

  • Content-Length

  • Host

  • Max-Forwards

  • TE

  • Transfer-Encoding

  • Trailer

  • Upgrade

  • Via

  • WWW-Authenticate

  • X-Forwarded-For

动态参数

在调用 API Gateway 目标时,您可以动态地向发送到该目标的事件添加数据。有关更多信息,请参阅 目标参数

调用重试

与所有目标一样, EventBridge 会重试一些失败的调用。对于 API Gateway, EventBridge 重试以 5xx 或 429 HTTP 状态码发送的响应长达 24 小时,并出现指数级退缩和抖动。之后,在 Amazon 上 EventBridge 发布一个FailedInvocations指标 CloudWatch。 EventBridge 不会重试其他 4xx 错误HTTP。

超时

EventBridge 规则API网关请求的最大客户端执行超时时间必须为 5 秒。如果 API Gateway 的响应 EventBridge 时间超过 5 秒,则会超时请求然后重试。

EventBridge Pi API pes Gateway 请求的最大超时时间为 29 秒,即API网关的最大超时时间。