

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon EventBridge 中規則的 Amazon API Gateway 目標 EventBridge
<a name="eb-api-gateway-target"></a>

您可以使用 Amazon API Gateway 來建立、發佈、維護與監控 API。Amazon EventBridge 支援將事件傳送至 API Gateway 端點。當您指定 API Gateway 端點做為[目標](eb-targets.md)時，傳送至目標的每個[事件](eb-events.md)都會映射至傳送至端點的請求。

**重要**  
EventBridge 支援使用 API Gateway *邊緣最佳化*和*區域*端點作為目標。目前不支援*私人*端點。若要進一步了解叢集端點，請參閱 [https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-endpoint-types.html](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-Amz` 或 `X-Amzn`
`Authorization`
`Connection`
`Content-Encoding`
`Content-Length`
`Host`
`Max-Forwards`
`TE`
`Transfer-Encoding`
`Trailer`
`Upgrade`
`Via`
`WWW-Authenticate`
`X-Forwarded-For`

## 動態參數
<a name="eb-targets-apigateway-dynamic"></a>

調用 API Gateway 目標時，您可以動態地將資料新增至傳送至目標的事件。如需詳細資訊，請參閱 [目標參數](eb-targets.md#targets-specific-parms)。

## 調用指標
<a name="eb-targets-apigateway-retries"></a>

與所有目標一樣，EventBridge 會重試某些失敗的調用。對於 API Gateway，EventBridge 會重試使用 5xx 或 429 HTTP 狀態碼傳送的回應，最長可達 24 小時，並具有[指數退回和抖動](https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/)。之後，EventBridge 在 Amazon CloudWatch 中發布 `FailedInvocations` 指標。EventBridge 不會重試其他 4xx HTTP 錯誤。

## Timeout (逾時)
<a name="eb-targets-apigateway-timeout"></a>

EventBridge 規則 API Gateway 請求的用戶端執行逾時上限必須為 5 秒。如果 API Gateway 的回應時間超過 5 秒，則 EventBridge 會逾時請求，然後重試。

EventBridge 管道 API Gateway 請求的逾時上限為 29 秒，即 API Gateway 上限。