当社はIT技術のオンライン教育を得意としたセミナー専門会社です。 | 一戸英男

ITエンジニアの技術力UPをお約束します。

AWS Lambdaの関数URLを使ってGET/POSTの値を取得する簡単サンプル

関数URLは便利な機能

pythonでlambdaの関数を作成し実験を行います。WEB CGIプログラムを従来だったならAPI GatewayとLambdaを連携させて作成するところだが昨年2022年関数URL機能が用意されAPI Gatewayを使わなくてもシンプルな使い方であればLambdaだけで簡単フォーム経由でのサーバ登録が行えてしまう。気軽にどのホストに登録したサーバコンテンツからでもAWSのlambdaを使ってCGI的な呼び出しができるのは良いですね。

実験する内容

EC2でWEB起動しindex.htmlのフォームから関数URLをform actionに設定し情報を送って見ましょう。これができるとRDS、auroraで作成したDBにデータを登録できるよね。今回はDBへ送るのはやらないけど容易にできることはわかるはず。関数作成時に設定する下記の箇所をチェックしておこう。

コンテンツフォームの内容

今回はEC2でコンテンツ作成したがオンプレのサーバで実験やってみても問題ない。 関数URLはパブリックに公開しているわけなので本番時にIAMサーバー認証を入れるとベターですね。実験では面倒なので省略します。尚関数コードはGET/POST両方用意するので適宜form methodの箇所をGET/POSTに書き換え、actionには関数URLに書き換えて実験しましょう。

関数コードGET式で実験する場合のコード

下記をlambda_functionのコードパッドに入力してください。

関数コードPOST式で実験する場合のコード

GET式よりも少し複雑になりましたがそれでも比較的簡単にかけました。 下記をlambda_functionのコードパッドに入力してください。

実験してみましょう

ブラウザーからアクセスしてみましょう。

次のような結果になればOKですね