チュートリアル: Lambda 関数の作成と使用 - AWS SDK for JavaScript

AWS SDK for JavaScript バージョン 3 (v3) は、モジュラーアーキテクチャを含むいくつかの素晴らしい新機能を備えた v2 の書き換えです。詳細については、AWS SDK for JavaScript v3 デベロッパーガイドを参照してください。

チュートリアル: Lambda 関数の作成と使用

このチュートリアルの学習内容は次のとおりです。

  • Node.js で AWS Lambda 関数を作成し、ウェブブラウザで実行されている JavaScript から関数を呼び出します。

  • Lambda 関数内で別のサービスを呼び出し、ブラウザのスクリプトに応答を転送する前に非同期応答を処理します。

  • Node.js スクリプトを使用して、Lambda 関数に必要なリソースを作成します。

シナリオ

この例では、シミュレートされたブラウザベースのスロットマシンゲームは、各スロットプルのランダムな結果を生成する Lambda 関数を呼び出します。これらの結果は、ユーザーに表示するために使用されるイメージのファイル名として返されます。画像は Amazon S3 バケットに保存されます。このバケットは、アプリケーションエクスペリエンスの表現に使用される HTML、CSS、およびその他のアセットの静的ウェブホストとして機能するように構成されています。

この図は、このアプリケーションのほとんどの要素と、それらが互いにどのように関連しているかを示しています。この図の型は、各タスクの目的を示すためにチュートリアル全体を通して表示されます。


                    Lambda 関数を呼び出すブラウザで実行されている JavaScript

Prerequisites

チュートリアルを開始する前に、次のタスクを完了する必要があります。

  • Node.js をコンピュータにインストールして、Amazon S3 バケットと Amazon DynamoDB テーブルのセットアップに役立つさまざまなスクリプトを実行し、Lambda 関数を作成して設定します。Lambda 関数自体は、AWS Lambda Node.js 環境で実行されます。Node.js のインストール方法については、www.nodejs.org を参照してください。

  • 設定スクリプトを実行するため、AWS SDK for JavaScript をコンピュータにインストールします。Node.js 用の AWS SDK for JavaScript のインストールの詳細については、「SDK for JavaScript のインストール」を参照してください。

このチュートリアルは完了までに約 30 分かかります。

チュートリアルのステップ

このアプリケーションを作成するには、複数のサービスからのリソースが必要です。サービスは、ブラウザスクリプトのコードと Lambda 関数の Node.js コードの両方で接続および設定されている必要があります。

チュートリアルアプリケーションと使用される Lambda 関数を構築するには

  1. コンピュータ上で、このチュートリアル用の作業ディレクトリを作成してください。

    Linux または Mac では ~/MyLambdaApp を使用します。Windows では C:\MyLambdaApp を使用します。これからは、これを MyLambdaApp と呼びます。

  2. GitHub のコード例アーカイブから slotassets.zip をダウンロードします。このアーカイブには、アプリケーションが使用するブラウザアセット、Lambda 関数で使用される Node.js コード、およびいくつかのセットアップスクリプトが含まれています。このチュートリアルでは、index.html ファイルを変更して、すべてのブラウザアセットファイルをこのアプリケーション用にプロビジョニングした Amazon S3 バケットにアップロードします。Lambda 関数作成の一環として、Amazon S3 バケットにアップロードする前に slotpull.js の Node.js コードも変更します。

    slotassets.zip のコンテンツを slotassets のディレクトリ MyLambdaApp として解凍します。slotassets ディレクトリには 30 個のファイルが含まれている必要があります。

  3. アカウントの認証情報を使用して、作業ディレクトリに JSON ファイルを作成します。このファイルは、AWS リクエストを認証するため、設定スクリプトによって使用されます。詳細については、「」を参照してくださいJSON ファイルから認証情報を Node.js にロードする

  4. 静的ウェブサイトとして設定された Amazon S3 バケットを作成します

  5. ブラウザスクリプトを準備しますindex.html の編集済みコピーをアップロード用に Amazon S3 に保存します。

  6. IAM で Lambda 実行ロールを作成します

  7. Amazon DynamoDB テーブルを作成して値を設定します

  8. Lambda 関数を準備して作成します

  9. Lambda 関数を実行します。

注記

この例のコードは GitHub で入手できます。