API Gateway Lambdaプロキシ統合で渡されるリクエストを確認しました
2021/01/12
API Gatewayの統合リクエストでLambdaを指定するときにプロキシ統合を使用すると、独自でマッピングテンプレートをする必要なく、クエリ文字列パラメータなどをいい具合に渡してくれます。
統合リクエストでLambda関数を選択して、[Lambdaプロキシ統合の使用]にチェックを入れました。
メソッドリクエストで、クエリ文字列パラメータを設定しました。
API Gatewayのテストを実行した結果です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
{ "resource": "/memo", "path": "/memo", "httpMethod": "POST", "headers": None, "multiValueHeaders": None, "queryStringParameters": { "MemoId": "001", "Memo": "Hello" }, "multiValueQueryStringParameters": { "MemoId": [ "001" ], "Memo": [ "Hello" ] }, "pathParameters": None, "stageVariables": None, "requestContext": { "resourceId": "tyitdd", "resourcePath": "/memo", "httpMethod": "POST", "extendedRequestId": "YmjPqFZFIAMFtJQ=", "requestTime": "04/Jan/2021:02:36:32 +0000", "path": "/memo", "accountId": "123456789012", "protocol": "HTTP/1.1", "stage": "test-invoke-stage", "domainPrefix": "testPrefix", "requestTimeEpoch": 1609727792969, "requestId": "baaa7012-1af5-4bbf-84e2-e2855a964d0f", "identity": { "cognitoIdentityPoolId": None, "cognitoIdentityId": None, "apiKey": "test-invoke-api-key", "principalOrgId": None, "cognitoAuthenticationType": None, "userArn": "arn:aws:iam::123456789012:user/yamashita", "apiKeyId": "test-invoke-api-key-id", "userAgent": "aws-internal/3 aws-sdk-java/1.11.864 Linux/4.9.230-0.1.ac.223.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.262-b10 java/1.8.0_262 vendor/Oracle_Corporation", "accountId": "123456789012", "caller": "EXAMPLE", "sourceIp": "test-invoke-source-ip", "accessKey": "EXAMPLE", "cognitoAuthenticationProvider": None, "user": "EXAMPLE" }, "domainName": "testPrefix.testDomainName", "apiId": "1ouchacnu1" }, "body": None, "isBase64Encoded": False } |
Lambdaでevent[‘queryStringParameters’]をそのまま使えばいいので楽ちんですね。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
IAMアイデンティティセンター(IIC)のList Assignment APIを確認しました
やりたいことは、IAMアイデンティティセンター(IIC)のユーザー名をキーにして …
-
API GatewayのアクセスログをCloudWatchに記録する
Amazon API GatewayのアクセスログをCloudWatchに記録で …
-
AWS Launch WizardでMicrosoft IIS環境を構築してみました
AWS Launch Wizardを知っていますか? 私は知りませんでした。 A …
-
AWS Lambda(Python3.7)でPandocを実行する
昨日まで(AWS Batch) 昨日までは、Pandocを実行して、S3バケット …
-
WordPressで発生した「No space left on device」に対応
CloudWatch Logsメトリクスフィルターで「No space left …
-
AWS BackupでRDSスナップショットをクロスリージョンコピー
クロスリージョンでコピーしたい対象と理由 このブログはブログのアーキテクチャをコ …
-
Amazon VPCにオンプレミス検証環境想定プライベートDNSサーバー(BIND)をEC2で起動する
オンプレミス想定の検証で使うために、Amazon VPCにプライベート向けDNS …
-
CloudWatch LogsメトリクスフィルタでNginxのaccess_logから転送バイト数をモニタリングする
ユーザーガイドのApache ログからのフィールドの抽出を見てて、これ、Ngin …
-
AWS Lambda KMSを使って環境変数を暗号化、復号化する(Python)
Lambda内で外部APIを使用する場合などをユースケースとして、環境変数をKM …
-
Amazon EMR 「Hadoop を使用してビッグデータを分析」チュートリアルをやってみました
AWS認定データアナリティクス受験準備の一環で、Amazon EMRのチュートリ …