Objekte hochladen - Amazon Simple Storage Service

Objekte hochladen

Wenn Sie eine Datei zu Amazon S3 hochladen, wird sie in einem S3-Objekt gespeichert. Objekte umfassen die Datei und die Metadaten, die das Objekt beschreiben. Ein Bucket kann eine unbegrenzte Anzahl von Objekten aufnehmen. Bevor Sie Dateien zu Amazon S3 hochladen können, benötigen Sie die Schreibberechtigungen für den Bucket. Weitere Informationen zu den Zugriffsberechtigungen finden Sie unter Identity and Access Management in Amazon S3.

Sie können beliebige Dateitypen – Bilder, Backups, Daten, Filme usw. – in einen S3-Bucket hochladen. Die maximale Größe einer Datei, die Sie über die Amazon-S3-Konsole hochladen können, ist 160 GB. Verwenden Sie zum Hochladen einer Datei mit mehr als 160 GB die AWS CLI, AWS-SDK oder die Amazon-S3-REST-API.

Wenn Sie ein Objekt mit einem Schlüsselnamen hochladen, der bereits in einem Bucket mit aktiviertem Versioning vorhanden ist, erstellt Amazon S3 eine weitere Version des Objekts, statt das vorhandene Objekt zu ersetzen. Weitere Informationen über Versioning finden Sie unter Verwenden der S3-Konsole.

Abhängig von der Größe der Daten, die Sie hochladen, bietet Amazon S3 die folgenden Optionen:

  • Hochladen eines Objekts in einer einzigen Operation über die AWS-SDKs, die REST-API oder die AWS CLI – Mit einer einzigen PUT-Operation können Sie ein einzelnes Objekt mit einer Größe von bis zu 5 GB hochladen.

  • Hochladen eines einzelnen Objekts mit der Amazon-S3-Konsole – Mit der Amazon-S3-Konsole können Sie ein einzelnes Objekt mit einer Größe von bis zu 160 GB hochladen.

  • Hochladen eines Objekts in Teilen über die AWS-SDKs, die REST-API oder die AWS CLI – Über die API für mehrteilige Uploads können Sie ein einzelnes großes Objekt mit einer Größe von bis zu 5 TB hochladen.

    Die API für mehrteilige Uploads ist darauf ausgelegt, die Upload-Leistung für größere Objekte zu verbessern. Sie können ein Objekt in Teilen hochladen. Diese Objektteile können unabhängig, in jeder beliebigen Reihenfolge und parallel hochgeladen werden. Sie können einen mehrteiligen Upload verwenden, um Objekte mit einer Größe von 5 MB bis 5 TB hochzuladen. Weitere Informationen finden Sie unter Hochladen und Kopieren von Objekten mit mehrteiligen Uploads.

Beim Hochladen eines Objekts können Sie optional anfordern, dass Amazon S3 Ihr Objekt verschlüsselt, bevor es dieses auf einen Datenträger schreibt, und es wieder entschlüsselt, wenn Sie es herunterladen. Weitere Informationen finden Sie unter Datenschutz durch Verschlüsselung.

In diesem Verfahren wird erläutert, wie Sie Objekte und Ordner mithilfe der Konsole in einen S3-Bucket hochladen.

Wenn Sie ein Objekt hochladen, ist der Name des Objektschlüssels der Dateiname und etwaige optionale Präfixe. In der Amazon-S3-Konsole können Sie Ordner erstellen, um Ihre Objekte zu organisieren. In Amazon S3 werden Ordner als Präfixe dargestellt, die im Namen des Objektschlüssels angezeigt werden. Wenn Sie ein einzelnes Objekt in einen Ordner in der Amazon-S3-Konsole hochladen, wird der Ordnername im Namen des Objektschlüssels aufgenommen.

Wenn Sie beispielsweise ein Objekt mit dem Namen sample1.jpg in einen Ordner namens backup hochladen, lautet der Schlüsselname backup/sample1.jpg. Allerdings wird das Objekt in der Konsole als sample1.jpg im Ordner backup angezeigt. Weitere Informationen zu Schlüsselnamen finden Sie unter Arbeiten mit Objekt-Metadaten.

Anmerkung

Wenn Sie ein Objekt umbenennen oder eine der Eigenschaften in der Amazon-S3-Konsole ändern, z. B. Storage Class (Speicherklasse), Encryption (Verschlüsselung), Metadata (Metadaten), wird ein neues Objekt erstellt, das das alte ersetzt. Wenn S3-Versioning aktiviert ist, wird eine neue Version des Objekts erstellt, und das vorhandene Objekt wird zu einer älteren Version. Die Rolle, die die Eigenschaft ändert, wird auch Besitzer des neuen Objekts (oder der neuen Objektversion).

Wenn Sie einen Ordner hochladen, lädt Amazon S3 alle Dateien und Unterordner aus dem angegebenen Ordner in Ihren Bucket hoch. Es wird dann ein Objektschlüsselname zugewiesen, der eine Kombination aus dem hochgeladenen Dateinamen und dem Ordnernamen ist. Wenn Sie beispielweise einen Ordner mit dem Namen /images hochladen, der zwei Dateien, sample1.jpg und sample2.jpg, enthält, lädt Amazon S3 die Dateien hoch und weist ihnen die jeweiligen Schlüsselnamen images/sample1.jpg und images/sample2.jpg zu. Der Schlüsselname enthält den Ordnernamen als Präfix. Die Amazon-S3-Konsole zeigt nur den Teil des Schlüsselnamens nach dem letzten / an. Beispielsweise werden im Ordner "images" die Objekte images/sample1.jpg und images/sample2.jpg dann als sample1.jpg und sample2.jpg angezeigt.

So laden Sie Ordner und Dateien in einen S3-Bucket hoch

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-S3-Konsole unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie in der Liste Buckets den Namen des Buckets aus, in den Ihre Ordner oder Dateien hochgeladen werden sollen.

  3. Klicken Sie auf Upload.

  4. Führen Sie im Fenster Upload einen der folgenden Schritte aus:

    • Ziehen Sie Dateien und Ordner in das Fenster Upload (Hochladen) und legen Sie sie dort ab.

    • Wählen Sie Add file (Datei hinzufügen) oder Add folder (Ordner hinzufügen) aus, wählen Sie hochzuladende Dateien oder Ordner aus und wählen Sie dann Open (Öffnen) aus.

  5. Um die Versioning zu aktivieren, wählen Sie unter Destination (Ziel) die Option Enable Bucket Versioning (Bucket-Versioning aktivieren) aus.

  6. Um die aufgelisteten Dateien und Ordner hochzuladen, ohne zusätzliche Upload-Optionen zu konfigurieren, wählen Sie unten auf der Seite Upload aus.

    Amazon S3 lädt Ihre Objekte und Ordner hoch. Wenn der Upload abgeschlossen ist, wird auf der Seite Upload: status eine Erfolgsmeldung angezeigt.

So konfigurieren Sie zusätzliche Objekteigenschaften

  1. Um Zugriffssteuerungslisten-Berechtigungen zu ändern, wählen Sie Permissions (Berechtigungen) aus.

  2. Bearbeiten Sie die Berechtigungen unter Access control list (ACL) (Zugriffssteuerungsliste).

    Weitere Informationen zu den Zugriffsberechtigungen für Objekte finden Sie unter Festlegen von ACL-Berechtigungen für ein Objekt mit der S3-Konsole. Sie können der Öffentlichkeit Lesezugriff auf Ihre Objekte erteilen, und zwar für alle Dateien, die Sie hochladen. Wir empfehlen allerdings, die Standardeinstellung für den öffentlichen Lesezugriff nicht zu ändern. Die Erteilung von öffentlichem Lesezugriff ist nur für wenige Anwendungsfälle sinnvoll, beispielsweise, wenn Buckets für Websites verwendet werden. Nachdem Sie das Objekt hochgeladen haben, können Sie jederzeit Änderungen an den Objektberechtigungen vornehmen.

  3. Um andere zusätzliche Eigenschaften zu konfigurieren, wählen Sie Properties (Eigenschaften) aus.

  4. Wählen Sie im Abschnitt Storage class (Speicherklasse) die Speicherklasse für die Dateien aus die Sie hochladen.

    Weitere Informationen über Speicherklassen finden Sie unter Verwenden von Amazon-S3-Speicherklassen.

  5. Um die Verschlüsselungseinstellungen für Ihre Objekte zu aktualisieren, gehen Sie unter Server-side encryption settings (Serverseitige Verschlüsselungseinstellungen) wie folgt vor.

    1. Klicken Sie auf Specify an encryption key (Verschlüsselungsschlüssel angeben).

    2. Um die hochgeladenen Dateien mit Schlüsseln zu verschlüsseln, die von Amazon S3 verwaltet werden, wählen Sie Amazon S3 key (SSE-S3) (Amazon-S3-Schlüssel) aus.

      Weitere Informationen finden Sie unter Schützen von Daten durch serverseitige Verschlüsselung mit von Amazon S3 verwalteten Verschlüsselungsschlüsseln (SSE-S3).

    3. Um die hochgeladenen Dateien mit dem AWS Key Management Service (AWS KMS) zu verschlüsseln, wählen Sie den AWS Key Management Service-Schlüssel (SSE-KMS). Wählen Sie dann eine Option für den AWS KMS-Schlüssel.

      • AWS-verwalteter Schlüssel – Wählen Sie einen AWS-verwalteten Schlüssel aus.

      • Wählen Sie aus Ihren KMS-Root-Schlüsseln aus - Wählen Sie einen kundenverwalteten Schlüssel aus einer Liste von KMS-Schlüsseln aus, die sich in derselben Region befinden wie Ihr Bucket.

        Weitere Informationen zum Erstellen eines vom Kunden verwalteten Schlüssels finden Sie unter Creating Keys (Erstellen von Schlüsseln) im AWS Key Management Service-Entwicklerhandbuch. Weitere Informationen zum Schutz von Daten mit AWS KMS finden Sie unter Schützen von Daten durch serverseitige Verschlüsselung mit AWS Key Management Service (SSE-KMS).

      • Geben Sie den KMS-Root-Schlüssel-ARN ein – Geben Sie den AWS KMS-Schlüssel-ARN für einen vom Kunden verwalteten Schlüssel an und geben Sie den Amazon-Ressourcennamen (ARN) ein.

        Sie können den KMS-Root-Schlüssel-ARN verwenden, um einem externen Konto die Möglichkeit zu geben, ein Objekt zu verwenden, das durch ein AWS KMS key geschützt ist. Wählen Sie dazu Enter KMS root key ARN (KMS-Root-Schlüssel-ARN eingeben) aus und geben Sie den Amazon-Ressourcennamen (ARN) für das externe Konto ein. Administratoren eines externen Kontos, die über Nutzungsrechte für ein durch Ihren KMS-Schlüssel geschütztes Objekt verfügen, können den Zugriff durch die Erstellung einer IAM-Richtlinie auf Ressourcenebene weiter einschränken.

      Anmerkung

      Um Objekte in einem Bucket zu verschlüsseln, können Sie nur AWS KMS keys verwenden, die in der selben AWS-Region wie der Bucket verfügbar sind.

  6. Wählen Sie On (Ein) aus, um zusätzliche Prüfsummen zu verwenden. Wählen Sie dann für Checksum function (Prüfsummenfunktion) die Funktion aus, die Sie verwenden möchten. Amazon S3 berechnet und speichert den Prüfsummenwert, nachdem es das gesamte Objekt erhalten hat. Sie können das Feld Precalculated value (Vorberechneter Wert) verwenden, um einen vorberechneten Wert anzugeben. In diesem Fall vergleicht Amazon S3 den von Ihnen angegebenen Wert mit dem eigenen berechneten Wert. Wenn die beiden Werte nicht übereinstimmen, generiert Amazon S3 einen Fehler.

    Mit zusätzlichen Prüfsummen können Sie den Prüfsummenalgorithmus angeben, den Sie zur Überprüfung Ihrer Daten verwenden möchten. Weitere Informationen zu zusätzlichen Prüfsummen finden Sie unter Überprüfung der Objektintegrität.

  7. Um allen hochgeladenen Objekten Markierungen hinzuzufügen, wählen Sie Add tag (Tag hinzufügen). Geben Sie einen Tag-Namen in das Feld Key (Schlüssel) ein. Geben Sie einen Wert für das Tag ein.

    Das Markieren von Objekten ermöglicht Ihnen, Speicher zu kategorisieren. Jeder Tag ist ein Schlüssel/Wert-Paar. Bei Schlüssel- und Tag-Werten wird die Groß-/Kleinschreibung berücksichtigt. Sie können über bis zu 10 Markierungen pro Objekt verfügen. Ein Tag-Schlüssel kann maximal 128 Unicode-Zeichen lang sein, und die Tag-Werte können bis zu 255 Unicode-Zeichen lang sein. Weitere Informationen über Objekt-Markierungen finden Sie unter Kategorisieren des Speichers mithilfe von Markierungen.

  8. Um Metadaten hinzuzufügen, wählen Sie Add metadata (Metadaten hinzufügen).

    1. Wählen Sie unter Typdie Option System defined (System definiert) oder User defined (Benutzerdefiniert) aus.

      Für systemdefinierte Metadaten können Sie gemeinsame HTTP-Header wie Content-Type und Content-Disposition auswählen. Eine Liste systemdefinierter Metadaten und Informationen dazu, ob Sie Werte hinzufügen können, finden Sie unter Systemdefinierte Objektmetadaten. Metadaten, die mit dem Präfix x-amz-meta- beginnen, werden als benutzerdefinierte Metadaten behandelt. Benutzerdefinierte-Metadaten werden mit dem Objekt gespeichert und beim Download mit ihm zurückgegeben. Sowohl die Schlüssel als auch deren Werte müssen US-ASCII-Standards entsprechen. Benutzerdefinierte Metadaten können bis zu 2 KB umfassen. Weitere Informationen zu systemdefinierten und benutzerdefinierten Metadaten finden Sie unter Arbeiten mit Objekt-Metadaten.

    2. Wählen Sie für Key einen Schlüssel aus.

    3. Geben Sie einen Wert für den Schlüssel ein.

  9. Um Ihre Objekte hochzuladen, wählen Sie Upload (Hochladen) aus.

    Amazon S3 lädt Ihr Objekt hoch. Wenn der Upload abgeschlossen ist, wird auf der Seite Upload: status eine Erfolgsmeldung angezeigt.

  10. Wählen Sie Exit (Beenden) aus.

Sie können das AWS-SDK verwenden, um Objekte in Amazon S3 hochzuladen. Das SDK bietet Ihnen Wrapper-Bibliotheken für den einfachen Upload von Daten an. Weitere Informationen finden Sie in der Liste der unterstützten SDKs.

Hier sind ein paar Beispiele mit einigen ausgewählten SDKs:

.NET

Das folgende C#-Codebeispiel erstellt zwei Objekte mit zwei PutObjectRequest-Anforderungen:

  • Die erste PutObjectRequest-Anforderung speichert als Beispielobjektdaten eine Textzeichenfolge. Sie gibt zudem Bucket- und Objektschlüsselnamen an.

  • Die zweite PutObjectRequest-Anforderung lädt eine Datei durch Angabe des Dateinamens hoch. Diese Anforderung gibt außerdem den ContentType-Header und optionale Objektmetadaten (einen Titel) ein.

Anweisungen zum Erstellen und Testen eines funktionierenden Beispiels finden Sie unter Ausführen der .NET-Codebeispiele für Amazon S3.

using Amazon; using Amazon.S3; using Amazon.S3.Model; using System; using System.Threading.Tasks; namespace Amazon.DocSamples.S3 { class UploadObjectTest { private const string bucketName = "*** bucket name ***"; // For simplicity the example creates two objects from the same file. // You specify key names for these objects. private const string keyName1 = "*** key name for first object created ***"; private const string keyName2 = "*** key name for second object created ***"; private const string filePath = @"*** file path ***"; private static readonly RegionEndpoint bucketRegion = RegionEndpoint.EUWest1; private static IAmazonS3 client; public static void Main() { client = new AmazonS3Client(bucketRegion); WritingAnObjectAsync().Wait(); } static async Task WritingAnObjectAsync() { try { // 1. Put object-specify only key name for the new object. var putRequest1 = new PutObjectRequest { BucketName = bucketName, Key = keyName1, ContentBody = "sample text" }; PutObjectResponse response1 = await client.PutObjectAsync(putRequest1); // 2. Put the object-set ContentType and add metadata. var putRequest2 = new PutObjectRequest { BucketName = bucketName, Key = keyName2, FilePath = filePath, ContentType = "text/plain" }; putRequest2.Metadata.Add("x-amz-meta-title", "someTitle"); PutObjectResponse response2 = await client.PutObjectAsync(putRequest2); } catch (AmazonS3Exception e) { Console.WriteLine( "Error encountered ***. Message:'{0}' when writing an object" , e.Message); } catch (Exception e) { Console.WriteLine( "Unknown encountered on server. Message:'{0}' when writing an object" , e.Message); } } } }
Java

Das folgende Beispiel erstellt zwei Objekte. Das erste Objekt besitzt eine Textzeichenfolge als Daten, und das zweite Objekt ist eine Datei. Das Beispiel erstellt das erste Objekt durch Angabe des Bucket-Namen, des Objektschlüssels und von Textdaten direkt in einem Aufruf an AmazonS3Client.putObject(). Das Beispiel erstellt das zweite Objekt mittels einer PutObjectRequest, die den Bucket-Namen, den Objektschlüssel und den Dateipfad angibt. Die PutObjectRequest gibt zudem den ContentType-Header und Titelmetadaten an.

Anweisungen zum Erstellen und Testen eines funktionierenden Beispiels finden Sie unter Testen der Java-Codebeispiele für Amazon S3.

import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.regions.Regions; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder; import com.amazonaws.services.s3.model.ObjectMetadata; import com.amazonaws.services.s3.model.PutObjectRequest; import java.io.File; import java.io.IOException; public class UploadObject { public static void main(String[] args) throws IOException { Regions clientRegion = Regions.DEFAULT_REGION; String bucketName = "*** Bucket name ***"; String stringObjKeyName = "*** String object key name ***"; String fileObjKeyName = "*** File object key name ***"; String fileName = "*** Path to file to upload ***"; try { //This code expects that you have AWS credentials set up per: // https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-credentials.html AmazonS3 s3Client = AmazonS3ClientBuilder.standard() .withRegion(clientRegion) .build(); // Upload a text string as a new object. s3Client.putObject(bucketName, stringObjKeyName, "Uploaded String Object"); // Upload a file as a new object with ContentType and title specified. PutObjectRequest request = new PutObjectRequest(bucketName, fileObjKeyName, new File(fileName)); ObjectMetadata metadata = new ObjectMetadata(); metadata.setContentType("plain/text"); metadata.addUserMetadata("title", "someTitle"); request.setMetadata(metadata); s3Client.putObject(request); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it, so it returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }
JavaScript

Im folgenden Beispiel wird eine vorhandene Datei in einen Amazon-S3-Bucket in einer bestimmten Region hochgeladen.

// Import required AWS SDK clients and commands for Node.js. import { PutObjectCommand } from "@aws-sdk/client-s3"; import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. import {path} from "path"; import {fs} from "fs"; const file = "OBJECT_PATH_AND_NAME"; // Path to and name of object. For example '../myFiles/index.js'. const fileStream = fs.createReadStream(file); // Set the parameters export const uploadParams = { Bucket: "BUCKET_NAME", // Add the required 'Key' parameter using the 'path' module. Key: path.basename(file), // Add the required 'Body' parameter Body: fileStream, }; // Upload file to specified bucket. export const run = async () => { try { const data = await s3Client.send(new PutObjectCommand(uploadParams)); console.log("Success", data); return data; // For unit tests. } catch (err) { console.log("Error", err); } }; run();
PHP

Dieses Thema führt Sie durch die Verwendung von AWS SDK for PHP-Klassen für das Hochladen eines Objekts mit einer Größe von bis zu 5 GB. Für größere Dateien müssen Sie eine API für einen mehrteiligen Upload verwenden. Weitere Informationen finden Sie unter Hochladen und Kopieren von Objekten mit mehrteiligen Uploads.

Dieser Abschnitt setzt voraus, dass Sie den Anweisungen für Verwenden von AWS SDK for PHP und Ausführen von PHP-Beispielen folgen und AWS SDK for PHP ordnungsgemäß installiert ist.

Beispiel – Erstellen eines Objekts in einem Amazon-S3-Bucket, indem Daten hochgeladen werden

Das folgende PHP- Beispiel erstellt ein Objekt in einem spezifizierten Bucket, indem die Daten mit der putObject()-Methode hochgeladen werden. Weitere Informationen zur Ausführung der PHP-Beispiele in dieser Anleitung finden Sie unter PHP-Beispiele ausführen.

require 'vendor/autoload.php'; use Aws\S3\S3Client; use Aws\S3\Exception\S3Exception; $bucket = '*** Your Bucket Name ***'; $keyname = '*** Your Object Key ***'; $s3 = new S3Client([ 'version' => 'latest', 'region' => 'us-east-1' ]); try { // Upload data. $result = $s3->putObject([ 'Bucket' => $bucket, 'Key' => $keyname, 'Body' => 'Hello, world!', 'ACL' => 'public-read' ]); // Print the URL to the object. echo $result['ObjectURL'] . PHP_EOL; } catch (S3Exception $e) { echo $e->getMessage() . PHP_EOL; }
Ruby

Die AWS SDK for Ruby-Version 3 bietet zwei Möglichkeiten, ein Objekt in Amazon S3 hochzuladen. Bei der ersten wird ein verwalteter Datei-Uploader verwendet, mit dem es ganz einfach ist, Dateien beliebiger Größe von einem Datenträger hochzuladen. So verwenden Sie die Methode des verwalteten Datei-Uploaders:

  1. Erstellen Sie eine Instance der Aws::S3::Resource-Klasse.

  2. Verweisen Sie per Bucket-Name und Schlüssel auf das Ziel-Objekt. Objekte befinden sich in einem Bucket und haben eindeutige Schlüssel, die jedes Objekt identifizieren.

  3. Rufen Sie#upload_file für das Objekt auf.

require "aws-sdk-s3" # Wraps Amazon S3 object actions. class ObjectUploadFileWrapper attr_reader :object # @param object [Aws::S3::Object] An existing Amazon S3 object. def initialize(object) @object = object end # Uploads a file to an Amazon S3 object by using a managed uploader. # # @param file_path [String] The path to the file to upload. # @return [Boolean] True when the file is uploaded; otherwise false. def upload_file(file_path) @object.upload_file(file_path) true rescue Aws::Errors::ServiceError => e puts "Couldn't upload file #{file_path} to #{@object.key}. Here's why: #{e.message}" false end end def run_demo bucket_name = "doc-example-bucket" object_key = "my-uploaded-file" file_path = "object_upload_file.rb" wrapper = ObjectUploadFileWrapper.new(Aws::S3::Object.new(bucket_name, object_key)) return unless wrapper.upload_file(file_path) puts "File #{file_path} successfully uploaded to #{bucket_name}:#{object_key}." end run_demo if $PROGRAM_NAME == __FILE__

Die zweite Möglichkeit, mit der AWS SDK for Ruby - Version 3 ein Objekt hochladen kann, ist die #put-Methode von Aws::S3::Object. Das ist praktisch, wenn das Objekt eine Zeichenfolge oder ein I/O-Objekt ist, bei dem es sich nicht um eine Datei auf einem Datenträger handelt. So verwenden Sie diese Methode:

  1. Erstellen Sie eine Instance der Aws::S3::Resource-Klasse.

  2. Verweisen Sie per Bucket-Name und Schlüssel auf das Ziel-Objekt.

  3. Rufen Sie #put auf und übergeben Sie die Zeichenfolge oder das I/O-Objekt.

require "aws-sdk-s3" # Wraps Amazon S3 object actions. class ObjectPutWrapper attr_reader :object # @param object [Aws::S3::Object] An existing Amazon S3 object. def initialize(object) @object = object end def put_object(source_file_path) File.open(source_file_path, "rb") do |file| @object.put(body: file) end true rescue Aws::Errors::ServiceError => e puts "Couldn't put #{source_file_path} to #{object.key}. Here's why: #{e.message}" false end end def run_demo bucket_name = "doc-example-bucket" object_key = "my-object-key" file_path = "my-local-file.txt" wrapper = ObjectPutWrapper.new(Aws::S3::Object.new(bucket_name, object_key)) success = wrapper.put_object(file_path) return unless success puts "Put file #{file_path} into #{object_key} in #{bucket_name}." end run_demo if $PROGRAM_NAME == __FILE__

Sie können REST-Anfragen senden, um ein Objekt hochzuladen. Sie können eine PUT-Anforderung senden, um Daten in einer einzigen Operation hochzuladen. Weitere Informationen finden Sie unter PUT Object.

Sie können eine PUT-Anforderung zum Hochladen eines Objekts von bis zu 5 GB in einem einzigen Vorgang senden. Weitere Informationen finden Sie im PutObject-Beispiel in der AWS CLI-Befehlsreferenz.