期間限定で無料のIntroduction to Amazon API Gateway(日本語版)ハンズオンラボをやってみた #AWSSummit

2021.05.12

AWS Summit Online 2021の2日目が始まりましたが皆さん楽しんでますでしょうか?通常有料のセルフペースラボが期間限定( 5/11 8:00 - 5/12 20:00)まで無料となっていると知り大慌てで試してきました。日本語で試すことができるので、ぜひ皆さんもやりましょう!以下のエントリで提供コースの一覧が確認できます。

今回はしばらく触っていないサービスで、ハンズオン一覧画面でTOP10の一番前にあって人気そうだったので、Introduction to Amazon API Gateway(日本語版)をやっていきます。

できるようになること

このラボを実施することで以下のことができるようになります。

  • AWS Lambda 関数を作成する
  • Amazon API Gateway エンドポイントを作成する
  • Amazon CloudWatch で API Gateway と Lambda のデバッグを実行する

あまりLambdaやAPI Gatewayに触れたことがない人向けのハンズオンのようなので、興味があるけどあまり触る機会がない…という人はぜひ。

Introduction to Amazon API Gateway(日本語版)をやってみる

通常は有料のコンテンツとのことなので、実際に利用するコードの詳細などは省略して進めていきます。右上のラボを開始から進めていきます。同意を求められる画面が出るので、チェックを入れて開始しましょう。

するとラボの起動が始まります。1,2分程度で終わるので待ちましょう。

完了したら「コンソールを開く」から開始できます。

タスク 1: Lambda 関数を作成する

ここからは実際にラボが用意してくれたAWS環境のコンソールで操作していきます。

Lambdaのサービス画面を開いて関数の作成をクリックします。

関数名とランタイムは指示通り以下のように入力、実行ロールはすでにラボ側で用意されているようなので、既存のロールからロールを選択して関数を作成します。

次にコードタブからindex.jsを選択し、既存のコードから指定されたコードで上書きしてDeployをクリックします。

上のタブから設定を選んで、一般設定の中にある編集をクリック。

説明欄にProvide a random FAQと入力して保存します。

API Gateway エンドポイントを作成するため、トリガーの追加を行いましょう。Lambda関数を上にスクロールすると以下の画面があるので、トリガーを追加をクリックしてください。

API Gatewayを選択すると入力欄が出てくるので、指定された以下情報を入力していきます。入力が完了したら作成しましょう。

これでLambdaの作成とLambda関数をトリガーするAPI Gatewayの作成は完了です。

タスク 2: Lambda 関数をテストする

API Gatewayをクリックします。

すると、以下のようなAPI Gatewayが表示されるので、詳細をクリックしてAPIエンドポイント をコピーしましょう。

取得したAPIエンドポイントを適当なブラウザのタブに貼り付けると、以下のようなランダムのFAQエントリが表示されました。 これは先ほど作成したAPI Gatewayエンドポイント へリクエストを送ることで、そこに紐づいているLambda関数が呼び出された結果となります。Lambdaのindex.jsにはランダムでFAQを返すコード

元のAWSコンソールに戻ってLambda関数個別のテストを行っていきます。テストタブを開いて、名前にBasicTestと入力し、元々表示されていたキーと値を削除して空のJSON{}を入力したら変更の保存をしましょう。

保存が完了したら、テストを実際に実行してみると実行結果からLambda関数から返された結果とログ、処理にかかった時間などが確認できます。

モニタリングタブをクリックすると、保存されたログを確認することができます。ここで表示されているログストリームをクリックすると、先ほどLambdaの詳細画面で確認したログと同じものが記録されていることを確認することができました。

以上でハンズオンの内容は終了です。

感想

キャプチャを取りながらでも1時間かからずにさくっと試すことができました。LambdaやAPI Gatewayをまだそこまで触ったことないという人には基本的な使い方を理解できるいいハンズオンなので、ぜひこの機会に触ってみてください