API 網關中 REST API Gateway 的模擬集成 - Amazon API Gateway

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

API 網關中 REST API Gateway 的模擬集成

Amazon API Gateway 支援 API 方法的模擬整合。此功能可讓 API 開發人員直接從 API Gateway 產生 API 回應,而不需要整合後端。您是 API 開發人員,在專案開發完成之前,可以使用此功能來解鎖需要使用 API 的相依團隊。您也可以使用此功能來佈建您 API 的登錄頁面,以提供 API 的概觀,並導覽至 API。如需這類登錄頁面的範例,請參閱教學課程:匯入範例來建立 REST API 中所討論的範例 API 之根資源上的 GET 方法整合請求和回應。

作為 API 開發人員,您可決定 API Gateway 回應如何模擬整合請求。因此,您設定方法的整合請求和整合回應,以將回應與特定狀態碼建立關聯。若要讓具有模擬整合的方法傳回 200 回應,請設定整合請求內文映射範本來傳回下列內容。

{"statusCode": 200}

設定 200 整合回應,以具有下列內文映射範本,例如:

{ "statusCode": 200, "message": "Go ahead without me." }

例如,同樣地,若要讓方法傳回 500 錯誤回應,請設定整合請求內文映射範本來傳回下列內容。

{"statusCode": 500}

例如,設定具有下列映射範本的 500 整合回應:

{ "statusCode": 500, "message": "The invoked method is not supported on the API resource." }

或者,您可以讓模擬整合方法傳回預設整合回應,而不需要定義整合請求映射範本。預設整合回應具有未定義的 HTTP status regex (HTTP 狀態 regex)。請確定已設定適當的傳遞行為。

注意

模擬整合並不支援大型回應範本。如果您的使用案例需要這類範本,應考慮改用 Lambda 整合。

您可使用整合請求映射範本來插入應用程式邏輯,以根據特定條件決定要傳回的模擬整合回應。例如,您可以在傳入請求上使用 scope 查詢參數,決定是要傳回成功回應還是錯誤回應:

{ #if( $input.params('scope') == "internal" ) "statusCode": 200 #else "statusCode": 500 #end }

因此,模擬整合方法可讓內部呼叫通過,同時拒絕具有錯誤回應之其他類型的呼叫。

在本節中,我們將說明如何使用 API Gateway 主控台來啟用 API 方法的模擬整合。