メニュー
Amazon API Gateway
開発者ガイド

API Gateway のモック統合をセットアップする

Amazon API Gateway は、API メソッドの Mock 統合をサポートしています。この機能により、API 開発者はバックエンドを統合することなく、API Gateway から直接 API レスポンスを生成できます。API 開発者がこの機能を使用すると、プロジェクト開発の完了前に、API を操作する必要がある他の依存チームのブロックを解除できます。また、この機能を活用して、API の概要や API へのナビゲーションを提供できる API のランディングページをプロビジョニングすることができます。そのようなランディングページの例として、「例から API Gateway 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] を持つレスポンスです。適切なパススルー動作が設定されていることを確認します。

統合リクエストマッピングテンプレートを使用して、アプリケーションロジックを挿入して、特定の条件に基づいて返すモック統合レスポンスを決定することができます。たとえば、受信リクエストに対して scope クエリパラメータを使用して、成功レスポンスまたはエラーレスポンスを返すかどうかを判断できます。

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

このように、モック統合の方法では、エラーレスポンスを伴う他のタイプの呼び出しを拒否しながら、内部呼び出しを通過させることができます。

このセクションでは、API Gateway コンソールを使用する方法について説明します。 API メソッドのモック統合を有効にする方法を説明します。