Erste Schritte in Node.js - AWS SDK for JavaScript

Helfen Sie uns, dasAWS SDK for JavaScriptVersion 3 (V3) -Dokumentation durch Feedback unter Verwendung derFeedbackLink oder erstellen Sie ein Problem oder ziehen Sie eine Anfrage anGitHubaus.

DieAWS SDK for JavaScriptReferenzhandbuch zur V3-API-Referenzbeschreibt ausführlich alle API-Operationen für dieAWS 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.

Erste Schritte in Node.js

JavaScript code example that applies to Node.js execution

Dieses Node.js-Codebeispiel zeigt:

  • Wie die Module, die Ihr Projekt verwendet, installiert und eingeschlossen werden.

  • Wie schreibe ich den Code Node.js, um einen Amazon S3 S3-Bucket zu erstellen und ein Objekt in diesen Bucket hochzuladen.

  • Ausführen des Codes.

Das Szenario

Das Beispiel zeigt, wie ein einfaches Modul Node.js eingerichtet und ausgeführt wird, das einen Amazon S3 S3-Bucket erstellt und dann ein Textobjekt hinzufügt.

Erforderliche Aufgaben

Zum Einrichten und Ausführen dieses Beispiels müssen Sie zunächst diese Aufgaben abschließen:

Schritt 1: Installieren Sie das Amazon S3-Paket und die Abhängigkeiten

So installieren Sie das Clientpaket und die Abhängigkeiten:

  1. In dersrcProjektverzeichnis, es gibt einpackage.json-Datei zum Halten der Metadaten für Ihr Node.js -Projekt.

    Anmerkung

    Weitere Informationen zur Verwendung von package.json in einem Node.js-Projekt finden Sie unter Was ist die Datei „package.json“?.

    { "name": "aws-sdk-v3-iam-examples", "version": "1.0.0", "main": "index.js", "dependencies": { "@aws-sdk/client-s3": "^3.32.0", "@aws-sdk/node-http-handler": "^3.32.0" }, "type": "module" }

    Der Beispiel-Code ist verfügbarhier auf GitHubaus.

  2. Aus dernodegetstarted-Verzeichnis, das diepackage.jsonGeben Sie den folgenden Befehl ein.

    npm install

    Die Pakete und Abhängigkeiten sind installiert.

    Anmerkung

    Sie können Abhängigkeiten zu dempackage.jsonund installiere sie durchnpm installaus. Sie können Abhängigkeiten auch direkt über die Befehlszeile hinzufügen. Wenn Sie z. B. dieAWS SDK for JavaScriptv3 Client-Modul für Amazon S3, geben Sie den folgenden Befehl in der Befehlszeile ein.

    npm install @aws-sdk/client-s3

    Diepackage.jsonAbhängigkeiten werden automatisch aktualisiert.

Schritt 2: Schreiben des Node.js Codes

Wichtig

Dieses Beispiel veranschaulicht, wie Client-Serviceobjekte importiert/exportiert werden und mit ECMASCRIPT6 (ES6) befehligt werden.

  • Dies erfordert Node.js Version 13.x oder höher. Informationen zum Herunterladen der neuesten Version von Node.js finden Sie unterNode.js Downloads.aus.

  • Wenn Sie die CommonJs-Syntax verwenden möchten, finden Sie unter weitere InformationenJavaScript ES6/CommonJS-Syntaxaus.

Erstellen Sie eine Datei namenssampleClient.jsUm den Client für die Erstellung des Amazon S3 Service-Client-Objekts zu enthalten. Kopieren Sie den folgenden Code und fügen Sie ihn in die Datei ein. ErsetzenREGIONmit DeinerAWSRegion :

import { S3Client } from "@aws-sdk/client-s3"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create an Amazon S3 service client object. const s3Client = new S3Client({ region: REGION }); export { s3Client };

Den Beispiel-Code finden Siehier auf GitHubaus.

Definieren Sie zunächst die Parameter durch ErsetzenBUCKET_NAMEMit dem Namen des -Buckets,SCHLÜSSELMit dem Namen des neuen Objekts,KÖRPERmit etwas Inhalt für das neue Objekt.

Als Nächstes erstellen Sie ein Amazon S3 S3-Clientobjekt. Erstellen Sie dann eine asynchrone Wrapper-Funktion, die zwei Try/Catch-Anweisungen nacheinander ausführt. Die erste try/catch-Anweisung erstellt den Bucket und die zweite erstellt und lädt das neue Objekt hoch.

Um den Bucket zu erstellen, erstellen Sie eine Konstante, dieCreateBucketCommandVerwendung des.sendMethode, die das async/await-Muster verwendet und den Namen des neuen Buckets übergibt. Das await-Schlüsselwort blockiert die Ausführung des gesamten folgenden Codes, bis der Bucket erstellt wird. Wenn ein Fehler auftritt, ist der erstecatch-Anweisung gibt einen Fehler zurück.

Um ein Objekt zu erstellen und in den neuen Bucket hochzuladen, nachdem es erstellt wurde, erstellen Sie eine Konstante, auf derPutObjectCommand, auch unter Verwendung des.send-Methode unter Verwendung des async/await-Musters und Übergabe der Bucket-, Schlüssel- und Körperparameter. Wenn ein Fehler auftritt,catch-Anweisung gibt einen Fehler zurück.

// Import required AWS SDK clients and commands for Node.js. import { PutObjectCommand, CreateBucketCommand } from "@aws-sdk/client-s3"; import { s3Client } from "./libs/s3Client.js"; // Set the parameters const params = { Bucket: "BUCKET_NAME", // The name of the bucket. For example, 'sample_bucket_101'. Key: "KEY", // The name of the object. For example, 'sample_upload.txt'. Body: "BODY", // The content of the object. For example, 'Hello world!". }; const run = async () => { // Create an Amazon S3 bucket. try { const data = await s3Client.send( new CreateBucketCommand({ Bucket: params.Bucket }) ); console.log(data); console.log("Successfully created a bucket called ", data.Location); return data; // For unit tests. } catch (err) { console.log("Error", err); } // Create an object and upload it to the Amazon S3 bucket. try { const results = await s3Client.send(new PutObjectCommand(params)); console.log( "Successfully created " + params.Key + " and uploaded it to " + params.Bucket + "/" + params.Key ); return results; // For unit tests. } catch (err) { console.log("Error", err); } }; run();

Den Beispiel-Code finden Siehier auf GitHubaus.

Schritt 3: Ausführen des Beispiels

Geben Sie den folgenden Befehl ein, um das -Beispiel auszuführen.

node sample.js

Wenn der Upload erfolgreich ist, sehen Sie eine Bestätigungsmeldung an der Eingabeaufforderung. Sie können zudem den Bucket und das hochgeladene Textobjekt in der Amazon S3-Konsole finden.