API Gateway 中 REST API 的模擬整合
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 方法的模擬整合。