创建Amazon资源 - Amazon SDK for JavaScript
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

帮助我们改进Amazon SDK for JavaScript版本 3 (V3) 文档,方法是使用反馈链接,或者在上创建议题或拉取请求GitHub.

这些区域有:Amazon SDK for JavaScriptV3 API 参考指南详细描述了Amazon SDK for JavaScript版本 3 (V3)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建Amazon资源

此应用程序需要以下资源:

  • Amazon Identity and Access Management(IAM) 具有以下权限的未验证 Amazon Cognito 用户角色:

    • sns:Publish

    • dynamodb:PutItem

  • DynamoDB 表。

您可以在Amazon控制台,但是我们建议使用Amazon CloudFormation(Amazon CloudFormation) 如本教程中所述。

创建Amazon使用的资源Amazon CloudFormation

Amazon CloudFormation 让您能够以可预测、可重复的方式创建和预置 Amazon 基础设施部署。有关 的更多信息Amazon CloudFormation,请参阅Amazon CloudFormation开发人员指南。.

创建Amazon CloudFormation使用堆栈Amazon CLI:

  1. 安装和配置Amazon CLI按照中的说明进行操作Amazon CLI用户指南.

  2. 创建名为的文件setup.yaml在项目文件夹的根目录中,复制内容在此处GitHub进入它。

    注意

    这些区域有:Amazon CloudFormation模板是使用Amazon CDK可用在此处GitHub. 有关 Amazon CDK 的更多信息,请参阅 Amazon Cloud Development Kit (CDK) 开发人员指南

  3. 从命令行运行以下命令,替换STACK_NAME堆栈具有唯一的名称,领域在您的Amazon区域。

    重要

    堆栈名称在Amazon地区和Amazonaccount. 您最多可指定 128 个字符,并允许使用数字和连字符。

    aws cloudformation create-stack --stack-name STACK_NAME --template-body file://setup.yaml --capabilities CAPABILITY_IAM --region REGION

    有关create-stack命令参数,请参阅Amazon CLI命令参考指南,以及Amazon CloudFormation用户指南.

    要查看创建的资源,请打开Amazon CloudFormation中的Amazon管理控制台,选择堆栈,然后选择资源选项卡。

  4. 创建堆栈时,请使用Amazon SDK for JavaScript填充 DynamoDB 表格,如中所述填充表.

填充表

要填充表格,首先创建一个名为libs,然后创建一个名为的文件dynamoClient.js,然后将下面的内容粘贴到其中。Replace领域用你的Amazon区域。这将创建 DynamoDB 客户端对象。

import { CognitoIdentityClient } from "@aws-sdk/client-cognito-identity"; import { fromCognitoIdentityPool } from "@aws-sdk/credential-provider-cognito-identity"; import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; const REGION = "REGION"; const IDENTITY_POOL_ID = "IDENTITY_POOL_ID"; // An Amazon Cognito Identity Pool ID. // Create an Amazon DynaomDB service client object. const dynamoClient = new DynamoDBClient({ region: REGION, credentials: fromCognitoIdentityPool({ client: new CognitoIdentityClient({ region: REGION }), identityPoolId: IDENTITY_POOL_ID, }), }); export { dynamoClient };

此代码可用在此处GitHub.

接下来,创建dynamoAppHelperFiles创建项目文件夹中的文件夹update-table.js在里面,然后复制内容在此处GitHub进入它。

// Import required AWS SDK clients and commands for Node.js import { PutItemCommand } from "@aws-sdk/client-dynamodb"; import { dynamoClient } from "../libs/dynamoClient.js"; // Set the parameters export const params = { TableName: "Items", Item: { id: { N: "1" }, title: { S: "aTitle" }, name: { S: "aName" }, body: { S: "aBody" }, }, }; export const run = async () => { try { const data = await dynamoClient.send(new PutItemCommand(params)); console.log("success"); console.log(data); } catch (err) { console.error(err); } }; run();

从命令行运行以下命令。

node update-table.js

此代码可用在此处GitHub.