帮助我们改进AWS SDK for JavaScript版本 3 (V3) 文档,方法是使用反馈链接,或者在上创建议题或拉取请求GitHub
这些区域有:AWS SDK for JavaScriptV3 API 参考指南详细描述了所有的 API 操作AWS SDK for JavaScript版本 3 (V3)。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将你的代码迁移到适用于 JavaScript V3
适用于的开发工具包有多种迁移路径 JavaScript 版本 3 (V3)。要充分利用 V3 容量减少的潜力,我们建议使用路径 3。
AWS SDK for JavaScript版本 3 (v3) 还附带了用于客户端配置和实用程序的现代化界面,其中包括凭证、Amazon S3 分段上传、DynamoDB 文档客户端、服务员等)。你可以在 v2 中找到更改的内容以及每个更改的 v3 等效项迁移指南位于AWS SDK for JavaScript GitHub 回购
有关以下内容的重大变更的信息AWS SDK for JavaScriptv2 到 v3, 请参阅升级说明 (2.x)
以下各部分详细介绍了这些路径并提供了示例。
路径 1 示例
以下代码安装了AWS适用于 Amazon 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 示例
以下命令用于安装AWS适用于 Amazon 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-
folder。PACKAGE_NAME
/commands
以下代码在中创建一个 Amazon S3 服务客户端对象
区域。us-west-2
const client = new S3Client({region: '
us-west-2
'});
要使用推荐的 async/await 模式调用导入的命令,必须导入要使用的命令,然后使用以下语法运行命令。
CLIENT
.send(newXXX
Command)
以下示例使用 async/await 模式创建 Amazon S3 存储桶,仅使用 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); } })();
有关更多示例,请参阅 适用于的开发工具包 JavaScript 代码示例: