ブラウザ用 SDK の構築 - AWS SDK for JavaScript

AWS SDK for JavaScript v2 の近日発表 end-of-support しました。AWS SDK for JavaScript v3 に移行することをお勧めします。日付、その他の詳細、移行方法については、リンク先の発表内容を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ブラウザ用 SDK の構築

の SDK JavaScript は、デフォルトの のサービスセットをサポートする JavaScript ファイルとして提供されます。このファイルは通常、ホストされている SDK パッケージを参照する <script> タグを使用してブラウザスクリプトにロードされます。ただし、デフォルトセット以外のサービスのサポートが必要な場合や、SDK をカスタマイズする必要がある場合があります。

ブラウザで CORS を強制する環境の外部で SDK を使用し、SDK for によって提供されるすべてのサービスにアクセスする場合は JavaScript、リポジトリをクローンし、SDK のデフォルトのホストバージョンを構築するのと同じビルドツールを実行することで、SDK のカスタムコピーをローカルに構築できます。次のセクションでは、追加のサービスと API バージョンを使用して SDK を構築するステップについて説明します。

SDK Builder を使用して の SDK を構築する JavaScript

の独自のビルドを作成する最も簡単な方法は、https://sdk.amazonaws.com/builder/js で SDK ビルダーウェブアプリケーションを使用すること AWS SDK for JavaScript です。SDK ビルダーを使用して、ビルドに含めるサービスとその API バージョンを指定します。

サービスを追加または削除する開始点として、[Select all services] (すべてのサービスを選択) または [Select default services] (デフォルトサービスを選択) を選択します。コードを読みやすくするには [Development] (開発) を選択し、デプロイする縮小ビルドを作成するには [Minified] (縮小) を選択します。含めるサービスとバージョンを選択したら、[Build] (ビルド) を選択し、カスタム SDK をビルドしてダウンロードします。

CLI を使用して の SDK を構築する JavaScript

JavaScript を使用して 用の SDK を構築するには AWS CLI、まず SDK ソースを含む Git リポジトリのクローンを作成する必要があります。Git と Node.js をコンピュータにインストールしておく必要があります。

まず、 からリポジトリのクローン GitHub を作成し、 ディレクトリを ディレクトリに変更します。

git clone https://github.com/aws/aws-sdk-js.git cd aws-sdk-js

リポジトリのクローンを作成したら、SDK とビルドツールの両方の依存関係モジュールをダウンロードします。

npm install

これで、パッケージ化されたバージョンの SDK を構築することができます。

コマンドラインから構築する

ビルダーツールは、dist-tools/browser-builder.js にあります。次のように入力して、このスクリプトを実行します。

node dist-tools/browser-builder.js > aws-sdk.js

このコマンドは aws-sdk.js ファイルをビルドします。このファイルは圧縮されていません。デフォルトでは、このパッケージには標準的なサービスセットのみが含まれています。

ビルド出力を縮小する

ネットワーク上のデータ量を減らすために、 JavaScript ファイルは minification と呼ばれるプロセスで圧縮できます。縮小化は、コメント、不要なスペース、および人間が読みやすくするために役立つがコードの実行に影響を与えないその他の文字を削除します。ビルダーツールは、非圧縮または縮小出力を生成できます。ビルド出力を縮小するには、MINIFY 環境変数を設定します。

MINIFY=1 node dist-tools/browser-builder.js > aws-sdk.js

特定のサービスと API バージョンの構築

SDK に組み込むサービスを選択できます。サービスを選択するには、サービス名をコンマで区切ってパラメータとして指定します。例えば、Amazon S3 と Amazon EC2 のみを構築するには、次のコマンドを使用します。

node dist-tools/browser-builder.js s3,ec2 > aws-sdk-s3-ec2.js

サービス名の後にバージョン名を追加することによって、サービスビルドの特定の API バージョンを選択することもできます。例えば、Amazon DynamoDB の両方の API バージョンを構築するには、次のコマンドを使用します。

node dist-tools/browser-builder.js dynamodb-2011-12-05,dynamodb-2012-08-10

サービス識別子と API バージョンは、https://github.com/aws/aws-sdk-js/tree/master/apis にあるサービス固有の設定ファイルにあります。

すべてのサービスを構築する

all パラメータを含めることで、すべてのサービスと API バージョンを構築できます。

node dist-tools/browser-builder.js all > aws-sdk-full.js

特定のサービスの構築

ビルドに含まれる選択されたサービスセットをカスタマイズするには、必要なサービスのリストを含む AWS_SERVICES 環境変数を Browserify コマンドに渡します。次の例では、Amazon EC2、Amazon S3、DynamoDB のサービスを構築します。

$ AWS_SERVICES=ec2,s3,dynamodb browserify index.js > browser-app.js

Browserify による依存関係としての SDK の構築

Node.js には、サードパーティー開発者からのコードと機能を含めるためのモジュールベースのメカニズムがあります。このモジュラーアプローチは、ウェブブラウザで JavaScript を実行することでネイティブにサポートされません。ただし、Browserify と呼ばれるツールを使用すると、Node.js モジュールアプローチを使用したり、Node.js 用に書かれたモジュールをブラウザで使用したりできます。Browserify は、ブラウザスクリプトのモジュールの依存関係を、ブラウザで使用できる 1 つの自己完結型の JavaScript ファイルに構築します。

Browserify を使用すると、ブラウザスクリプトのライブラリ依存関係として SDK を構築できます。たとえば、次の Node.js コードには SDK が必要です。

var AWS = require('aws-sdk'); var s3 = new AWS.S3(); s3.listBuckets(function(err, data) { console.log(err, data); });

このサンプルコードは、Browserify を使用してブラウザ互換バージョンにコンパイルすることができます。

$ browserify index.js > browser-app.js

SDK の依存関係を含むアプリケーションは、browser-app.js を介してブラウザで利用可能になります。

Browserify の詳細については、「Browserify ウェブサイト」を参照してください。