JavaScript V3 for SDK へのコードの移行 - AWS SDK for JavaScript

Feedback(フィードバック)リンクを使用してフィードバックを提供するか、GitHub で問題またはプルリクエストを作成して、AWS SDK for JavaScript のバージョン3(V3)のドキュメントの改善に協力してください。

-AWS SDK for JavaScriptV3 API リファレンスガイドでは、のすべての API オペレーションについて詳しく説明します。AWS SDK for JavaScriptバージョン3 (V3)。

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

JavaScript V3 for SDK へのコードの移行

JavaScript バージョン 3 (V3) の SDK へのマイグレーションパスがいくつかあります。V3 の容量削減の可能性を最大限に活用するには、パス 3 の使用をお勧めします。

重要

AWS SDK for JavaScriptバージョン 3 (v3) には、認証情報、Amazon S3 マルチパートアップロード、DynamoDB ドキュメントクライアント、ウェイターなど、クライアント設定およびユーティリティ用のモダナイズインターフェイスも付属しています)。v2で何が変わったのか、それぞれの変化についてv3の同等物を見つけることができる。の移行ガイドAWS SDK for JavaScriptGitHub のレポ

Path 1

最小限の変更を実行します。

  • 特定のもののみをインストールするAWS必要なサービスパッケージ。

  • V3 サービスクライアントを作成して使用します。Region などのグローバル設定値の使用を、クライアントに引数として渡された設定値に置き換えます。

    注記

    次の設定を行うことができます。AWS環境変数または共有構成を使用したリージョンconfigファイルを開きます。詳細については、「」を参照してください。Node.js で認証情報を設定する

Path 2

パス 1 をたどって削除する.promiseである。V3では必須ではない。

Path 3

パス 1 に従い、async/await プログラミングモデルを使用します。

重要

からの大幅な変更については、AWS SDK for JavaScriptv2 から v3, を参照してくださいアップグレードノート (2.x から 3.x)GitHub で。

以下のセクションでは、これらのパスを例とともに詳しく説明します。

パス 1 の例

次のコードは、AWSAmazon S3 のサービスパッケージ。

npm install @aws-sdk/client-s3

以下のコードは Amazon S3 サービスをロードします。

import {S3} from '@aws-sdk/client-s3';
注記

この方法を使用するには、完全なものをインポートする必要があります。AWSサービスパッケージ、S3この場合、サービスクライアントだけではありません。

以下のコードは、に Amazon S3 サービスオブジェクトを作成します。us-west-2リージョン。

const client = new S3({region: 'us-west-2'});

次のコードは、V2 の次の構文を使用して、コールバック関数を使用して Amazon S3 バケットを作成します。

client.command(parameters)
import {S3} from '@aws-sdk/client-s3'; const client = new S3({region: 'us-west-2'}); const bucketParams = { Bucket : BUCKET_NAME }; function run(){ client.createBucket(bucketParams, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.Location); } }) }; run();

パス 2 の例

V2の関数呼び出しは、promise

const data = await v2client.command(params).promise()

V3バージョンはこちらです。

const data = await v3client.command(params)

パス 3 の例

次のコマンドは、AWSAmazon S3 のサービスパッケージ。

npm install @aws-sdk/client-s3;

次のコードは Amazon S3 クライアントのみをロードし、オーバーヘッドを削減します。

import {S3Client, CreateBucketCommand} from '@aws-sdk/client-s3';

パッケージのクライアントのみをインストールする場合は、使用する V3 コマンドもインポートする必要があります。この場合、コードはインポートします。CreateBucketCommandでは Amazon S3 バケットを作成できます。プロジェクトで使用可能なコマンドを参照できます。node-modules/@aws-sdk/client-PACKAGE_NAME/commandsfolder

以下のコードは、に Amazon S3 サービスクライアントオブジェクトを作成します。us-west-2リージョン。

const client = new S3Client({region: 'us-west-2'});

推奨される async/await パターンを使用してインポートされたコマンドを呼び出すには、使用するコマンドをインポートし、次の構文を使用してコマンドを実行する必要があります。

CLIENT.send(newXXXCommand)

次の例では、オーバーヘッドを削減するために Amazon S3 サービスパッケージのクライアントのみを使用して async/await パターンを使用して Amazon S3 バケットを作成します。

import {S3Client, CreateBucketCommand} from '@aws-sdk/client-s3'; const client = new S3Client({region: 'us-west-2'}); const bucketParams = { Bucket : BUCKET_NAME }; (async function () { try{ const data = await client.send(new CreateBucketCommand(bucketParams)); console.log("Success", data); } catch (err) { console.log("Error", err); } })();

その他の例については、「向け SDKJavaScriptコードの例」を参照してください。