Amazon API Gateway から AWS Lambda にクエリ文字列またはルートパラメータを渡す方法 質問する

Amazon API Gateway から AWS Lambda にクエリ文字列またはルートパラメータを渡す方法 質問する

例えば、

GET /user?name=bob

または

GET /user/bob

これらの両方の例を Lambda 関数のパラメータとして渡すにはどうすればよいでしょうか?

ドキュメントで「マップ元」の設定について何かを見ましたが、API Gateway コンソールでその設定を見つけることができません。

  • method.request.path.parameter-nameparameter-nameメソッドリクエストページで定義された名前のパスパラメータの場合。
  • method.request.querystring.parameter-nameparameter-nameメソッドリクエストページで定義された名前のクエリ文字列パラメータの場合。

クエリ文字列を定義したにもかかわらず、これらのオプションはどちらも表示されません。

ベストアンサー1

2017 年 9 月以降、リクエスト本文にアクセスするためにマッピングを構成する必要がなくなりました。

必要なのは、リソースの「統合リクエスト」の下にある「Lambda プロキシ統合を使用する」をチェックすることだけです。

ここに画像の説明を入力してください

クエリパラメータ、パスパラメータ、ヘッダーに次のようにアクセスできるようになります。

event['pathParameters']['param1']
event["queryStringParameters"]['queryparam1']
event['requestContext']['identity']['userAgent']
event['requestContext']['identity']['sourceIP']

おすすめ記事