2017-05-19 4 views
0

AWS APIゲートウェイに、リクエストを別のHTTPエンドポイントに転送するAPIがあります。私はクエリの文字列パラメータを "統合要求"にマップできることを知っています。しかし、私はパスの一部としてパラメータの値を他のエンドポイントに転送したいと思います。たとえば、のは、私のAPIの呼び出しがあるとしましょう:APIゲートウェイのクエリ文字列をパスに変換する

https://40gwfw20bg.execute-api.eu-west-1.amazonaws.com/beta?id=1234 

私はゲートウェイがパスにidの値を渡し、他のエンドポイントを呼び出したい:

http://external.api.com/1234 

が可能ということですか?

答えて

1

はい、これはあなたがこのためにラムダ関数を使用することができますが、あなたはまた、基本的な要求のマッピングを使用して、APIゲートウェイから直接それを行うことができますthis question

と非常によく似ています。

APIゲートウェイでAPIを定義し、ルートリソースに移動します。

GETメソッドを追加します。

[メソッド実行]ウィンドウで、[メソッド要求]を選択します。 「URLクエリ文字列パラメータ」を展開します。「クエリ文字列を追加」をクリックします。名前としてidを入力し、右側のチェックボックスをオンにして保存します。

[メソッド実行]ウィンドウに戻り、[統合要求]を選択します。エンドポイントURLを編集していない場合は、パスパラメータを追加するためにエンドポイントURLを編集します。 URLは次のとおりです。http://external.api.com/ {id}

[URLパスパラメータ]の横にある矢印をクリックすると、そのセクションが展開されます。 [パスを追加]をクリックします。名前としてIDを入力します。「マッピング元」の下に次のように入力します。method.request.querystring.id右側のチェックボックスをクリックして保存します。

メソッドの実行に戻り、「テスト」をクリックします。クエリ文字列の下にid値を追加し、テストをクリックします。

documentation here

関連する問題