5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWS-GUILDAdvent Calendar 2023

Day 21

Lambdaプロキシ統合を設定してみた

Last updated at Posted at 2023-12-20

Lambda プロキシ統合とは

Lambdaプロキシ統合はAmazon API GatewayのAPI統合タイプの1つで、API GatewayとLambda関数を接続するためのシンプルで柔軟な方法を提供します。Lambdaプロキシ統合を使用すると、クライアントはAPI Gatewayを介して単一のLambda関数を呼び出し、リクエストのレスポンスをクライアントに返します。

Amazon API Gateway Lambda プロキシ統合は、単一の API メソッドのセットアップで API を構築するシンプル、強力、高速なメカニズムです。
Lambda プロキシ統合は、クライアントが単一の Lambda 関数をバックエンドで呼び出すことを可能にします。
この関数は、他の Lambda 関数の呼び出しを含め、他の AWS のサービスのさまざまなリソースや機能にアクセスします。

Lambda プロキシ統合は主に以下のような特徴があります。

シンプルで柔軟性が高い
Lambda プロキシ統合は、API Gateway で最も基本的な統合タイプであり、設定が簡単です。また、HTTP メソッドとリクエスト ボディの形式を変更することで、さまざまなユースケースに対応できます。
クライアントと Lambda 関数間の変更に柔軟に対応できる
Lambda プロキシ統合では、クライアントと Lambda 関数間の HTTP ヘッダーとクエリ パラメーターをそのまま渡すため、クライアントと Lambda 関数間の変更に柔軟に対応できます。

Lambdaプロキシ統合を設定してみる

AWS Management Consoleにアクセスします。

aws console.png

AWS Management ConsoleからLambdaをクリックし、Lambda関数を作成します。
・関数名:myFunction
・ランタイム:Python 3.11
・アーキテクチャ:x86_64

lambda作成.png

Lambda関数「myFunction」作成後の画面

lambda作成後.png

次にAPI GatewayでLambda関数「myFunction」を呼び出すAPIを作成します。
・種類:REST API
・API名:myAPI
・APIエンドポイントタイプ:リージョン

api作成.png

「myAPI」作成後、メソッド作成からLambdaプロキシ統合の設定を行います。
・メソッドタイプ:GET
・統合タイプ:Lambda
・Lambda関数:ap-northeast-1リージョン、「myFunction」のARNを選択

apiメソッド作成.png

Lambdaプロキシ統合の設定後、Lambda関数「myFunction」のページを見るとAPI Gatewayが関数呼び出しのトリガーとして設定されていることがわかります。

lambda_api追加.png

API GatewayからLambda関数「myFunction」を呼び出す準備ができたので、「myAPI」をデプロイします。
・ステージ:New Stage
・ステージ名:test

apiデプロイ.png

デプロイ後の画面に表示されるURLを呼び出します。

呼び出しURL

https://{restapi_id}.execute-api.{region}.amazonaws.com/{stage_name}/

  • {restapi_id}:API ID
  • {region}:リージョン
  • {stage_name}:API デプロイのステージ名

apiデプロイ後.png

リクエスト送信後、API GatewayがLambda関数「myFunction」を呼び出すことに成功し、
""Hello from Lambda!""が応答として返ってくることが確認できました。

api呼び出し後.png

また、Lambda関数「myFunction」の作成時、デフォルトでイベント処理のログをCloudWatchにアップロードするアクセス権が付与されているため、CloudWatchのログイベントからもリクエストが正常終了したことを確認できます。

cloudwatchログ.png

まとめ

API Gatewayを使用したLambdaプロキシ統合を設定してみました。
Lambda プロキシ統合はAPI Gateway と Lambda 関数をシンプルに接続するための方法であり、クライアントと Lambda 関数間の変更にも柔軟に対応できるため、さまざまなユースケースで活用できます。

参考情報

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?