AWS SDK for JavaScript とは - AWS SDK for JavaScript

AWS SDK for JavaScript v2 のサポート終了が間近に迫っていることが発表されています。AWS SDK for JavaScript v3 に移行することをお勧めします。日付、その他の詳細、移行方法については、リンク先の発表内容を参照してください。

AWS SDK for JavaScript とは

AWS SDK for JavaScript は AWS のサービス用の JavaScript API を提供します。JavaScript API を使用して、Node.js またはブラウザ用のライブラリまたはアプリケーションを構築できます。

JavaScript 環境、SDK、およびアマゾン ウェブ サービスの関係

SDK では、一部のサービスはすぐには使用できません。現在 AWS SDK for JavaScript でサポートされているサービスを確認するには、https://github.com/aws/aws-sdk-js/blob/master/SERVICES.md を参照してください。GitHub での DK for JavaScript に関する情報については、その他のリソース を参照してください。

SDK メジャーバージョンのメンテナンスとサポート

SDK メジャーバージョンのメンテナンスとサポート、およびその基礎的な依存関係については、AWS SDK とツール共有設定および認証情報リファレンスガイド で以下を参照してください。

Node.js で SDK を使用する

Node.js は、サーバー側の JavaScript アプリケーションを実行するための、クロスプラットフォームランタイムです。サーバー上で実行するために、Amazon EC2 インスタンスで Node.js を設定できます。Node.js を使用してオンデマンドの AWS Lambda 関数を書き込むこともできます。

Node.js での SDK の使用方法は、ウェブブラウザの JavaScript で使用する方法とは異なります。この違いは、SDK のロード方法と、特定のウェブサービスにアクセスするために必要な認証情報の取得方法によるものです。Node.js とブラウザの間で特定の API の使用方法が異なる場合、その違いが指摘されます。

AWS Cloud9 による SDK の使用

AWS Cloud9 IDE で SDK for JavaScript を使用して Node.js アプリケーションを開発することもできます。Node.js 開発での AWS Cloud9 の使用方法のサンプルについては、AWS Cloud9 ユーザーガイドの「AWS Cloud9 のための Node.js のサンプル」を参照してください。SDK for JavaScript での AWS Cloud9 の使用の詳細については、AWS Cloud9 を AWS SDK for JavaScript に使用する を参照してください。

AWS Amplify での SDK の使用

ブラウザーベースのウェブアプリ、モバイルアプリ、ハイブリッドアプリの場合は、SDK for JavaScript を拡張し、宣言的なインターフェイスを提供する AWSGitHub の Amplify ライブラリを使用します。

注記

AWS Amplify などのフレームワークは、SDK for JavaScript と同じブラウザをサポートしない可能性があります。詳細については、フレームワークのドキュメントを参照してください。

ウェブブラウザで SDK を使用する

主要なウェブブラウザはすべて JavaScript の実行をサポートしています。ウェブブラウザで実行されている JavaScript コードは、クライアント側の JavaScript と呼ばれます。

ウェブブラウザでの SDK for JavaScript の使用方法は、Node.js を使用する方法とは異なります。この違いは、SDK のロード方法と、特定のウェブサービスにアクセスするために必要な認証情報の取得方法によるものです。Node.js とブラウザの間で特定の API の使用方法が異なる場合、その違いが指摘されます。

AWS SDK for JavaScript がサポートしているブラウザのリストについては、「サポートされるウェブブラウザ」を参照してください。

一般的なユースケース

ブラウザスクリプトで SDK for JavaScript を使用すると、多くの魅力的なユースケースを実現できます。SDK for JavaScript を使用してさまざまなウェブサービスにアクセスすることにより、ブラウザーアプリケーションで構築できるいくつかのアイデアを次に示します。

  • AWS のサービス用にカスタムコンソールを構築して、複数のリージョンやサービスにわたる機能にアクセスし、それらを組み合わせて組織やプロジェクトのニーズが最大限に満たされるようにします。

  • Amazon Cognito アイデンティティを使用して、Facebook やその他のサードパーティーによる認証の使用を含めて、認証されたユーザーがブラウザアプリケーションやウェブサイトにアクセスできるようにします。

  • Amazon Kinesis を使用して、クリックストリームやその他のマーケティングデータをリアルタイムで処理します。

  • ウェブサイトの訪問者やアプリケーションユーザー向けの個々のユーザー設定などの、サーバーレスデータの永続性のために Amazon DynamoDB を使用します。

  • AWS Lambda を使用して、ダウンロードなしで、知的財産をユーザーに公開することなくブラウザのスクリプトから呼び出すことができる独自のロジックをカプセル化する。

例について

AWS コード例のライブラリで SKD for JavaScript の例を参照できます。