Erstellen derAWSRessourcen - AWS SDK for JavaScript

Hilf uns, das zu verbessernAWS SDK for JavaScriptVersion 3 (V3) -Dokumentation, indem Sie Feedback mithilfe derFeedbackverlinken, oder erstellen Sie ein Issue oder Pull Request aufGitHub.

DieAWS SDK for JavaScriptReferenzhandbuch zur V3-APIbeschreibt ausführlich alle API-Operationen für denAWS SDK for JavaScriptVersion 3 (V3).

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen derAWSRessourcen

Diese App benötigt die folgenden Ressourcen:

  • AWS Identity and Access Management(IAM) Unauthentifizierte Amazon Cognito Benutzerrolle mit den folgenden Berechtigungen:

    • sns:Publish

    • dynamodb:PutItem

  • Eine DynamoDB-Tabelle.

Sie können diese Ressourcen manuell in derAWS-Konsole, aber wir empfehlen die Bereitstellung dieser Ressourcen mithilfe derAWS CloudFormation(AWS CloudFormation) wie in diesem Tutorial beschrieben.

Erstellen derAWSRessourcenAWS CloudFormation

AWS CloudFormation ermöglicht es Ihnen, die AWS-Infrastrukturen vorhersagbar und wiederholt zu erstellen und bereitzustellen. Weitere Informationen zuAWS CloudFormation, finden Sie in derAWS CloudFormationEntwicklerhandbuchaus.

So erstellen Sie dasAWS CloudFormationStackAWS CLI:

  1. Installieren und Konfigurieren der .AWS CLIgemäß der Anleitung in der Anleitung in derAWS CLI-Benutzerhandbuchaus.

  2. Erstellen Sie eine Datei namenssetup.yamlim Stammverzeichnis Ihres Projektordners und kopieren Sie den InhaltHier GitHubhinein.

    Anmerkung

    DieAWS CloudFormation-Vorlage wurde mit demAWS CDKverfügbarHier GitHubaus. Weitere Informationen zum AWS CDK finden Sie im AWS Cloud Development Kit (AWS CDK)Entwicklerhandbuch für.

  3. Führen Sie den folgenden Befehl über die Befehlszeile aus und ersetzen Sie Folgendes:STACK_NAMEmit einem eindeutigen Namen für den Stack undREGIONin IhremAWSRegion.

    Wichtig

    Der Stackname muss innerhalb einerAWSRegion undAWSKonto. Sie können bis zu 128 Zeichen angeben und Zahlen und Bindestriche sind zulässig.

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

    Weitere Informationen über diecreate-stack-Befehlsparameter finden Sie in derAWS CLIBefehlsreferenzund dasAWS CloudFormation-Benutzerhandbuchaus.

    Um die erstellten Ressourcen anzuzeigen, öffnen SieAWS CloudFormationimAWSManagementkonsole, wählen Sie den Stack und wählen Sie dieRessourcenRegisterkarte

  4. Wenn der Stack erstellt wurde, verwenden Sie denAWS SDK for JavaScriptum die DynamoDB-Tabelle zu füllen, wie in beschriebenAuffüllen der Tabelleaus.

Auffüllen der Tabelle

Um die Tabelle zu füllen, erstellen Sie zunächst ein Verzeichnis mit dem Namenlibs, und erstellen Sie eine Datei namensdynamoClient.js, und fügen Sie den Inhalt unten ein. ErsetzenREGIONmit IhremAWSRegion : Dadurch wird das DynamoDB-Clientobjekt erstellt.

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 };

Dieser Code ist verfügbarHier GitHubaus.

Erstellen Sie nun einedynamoAppHelperFiles-Ordner, erstellen Sie eine Dateiupdate-table.jsdarin, und kopiere den InhaltHier GitHubhinein.

// 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();

Führen Sie den folgenden Befehl über die Befehlszeile aus.

node update-table.js

Dieser Code ist verfügbarHier GitHubaus.