Auf dieser Seite wird beschrieben, wie Sie Objekte aus Ihrem lokalen Dateisystem in Ihren Cloud Storage-Bucket hochladen. Ein hochgeladenes Objekt besteht aus den Daten, die Sie zusammen mit den zugehörigen Metadaten speichern möchten. Eine konzeptionelle Übersicht, einschließlich der Auswahl der optimalen Uploadmethode, basierend auf der Dateigröße, finden Sie unter Uploads und Downloads.
Eine Anleitung zum Hochladen aus dem Speicher finden Sie unter Objekte aus dem Speicher hochladen.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Storage-Objekt-Nutzer (roles/storage.objectUser
) für den Bucket zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Hochladen von Objekten in einen Bucket benötigen. Diese vordefinierte Rolle enthält die Berechtigungen, die zum Hochladen eines Objekts in einen Bucket erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
storage.objects.create
storage.objects.delete
- Diese Berechtigung ist nur für Uploads erforderlich, die ein vorhandenes Objekt überschreiben.
storage.objects.get
- Diese Berechtigung ist nur erforderlich, wenn Sie die Google Cloud Console zum Ausführen der Aufgaben auf dieser Seite verwenden möchten.
storage.objects.list
- Diese Berechtigung ist nur erforderlich, wenn Sie die Google Cloud Console zum Ausführen der Aufgaben auf dieser Seite verwenden möchten. Diese Berechtigung ist auch erforderlich, wenn Sie die Google Cloud Console verwenden möchten, um die Objekte zu prüfen, die Sie hochgeladen haben.
Wenn Sie die Google Cloud Console zum Ausführen der Aufgaben auf dieser Seite verwenden möchten, benötigen Sie außerdem die Berechtigung storage.buckets.list
, die nicht in der Storage-Objekt-Nutzerrolle (roles/storage.objectUser
) enthalten ist. Bitten Sie den Administrator, Ihnen die Rolle „Storage-Administrator“ (roles/storage.admin
) für das Projekt zuzuweisen, um diese Berechtigung zu erhalten.
Sie können diese Berechtigungen auch mit anderen vordefinierten Rollen oder benutzerdefinierten Rollen erhalten.
Informationen zum Zuweisen von Rollen für Buckets finden Sie unter IAM mit Buckets verwenden.
Objekt in einen Bucket hochladen
Führen Sie die folgenden Schritte aus, um ein Objekt in einen Bucket hochzuladen:
Console
- Wechseln Sie in der Cloud Console zur Seite Cloud Storage-Buckets.
Klicken Sie in der Liste der Buckets auf den Namen des Buckets, in den Sie ein Objekt hochladen möchten.
Führen Sie im Tab "Objekte" für den Bucket eine der beiden Aktionen aus:
Ziehen Sie Dateien von Ihrem Desktop oder Dateimanager in den Hauptbereich der Google Cloud Console.
Klicken Sie auf die Schaltfläche Dateien hochladen, wählen Sie im angezeigten Dialogfeld die Dateien aus, die Sie hochladen möchten, und klicken Sie auf Öffnen.
Unter Fehlerbehebung erfahren Sie, wie Sie detaillierte Fehlerinformationen zu fehlgeschlagenen Cloud Storage-Vorgängen in der Google Cloud Console abrufen.
Befehlszeile
Führen Sie den Befehl gcloud storage cp
aus:
gcloud storage cp OBJECT_LOCATION gs://DESTINATION_BUCKET_NAME
Dabei gilt:
OBJECT_LOCATION
ist der lokale Pfad zu Ihrem Objekt. Beispiel:Desktop/dog.png
.DESTINATION_BUCKET_NAME
ist der Name des Buckets, in den Sie das Objekt hochladen. Beispiel:my-bucket
Wenn der Vorgang erfolgreich ausgeführt wurde, sieht die Antwort in etwa so aus:
Completed files 1/1 | 164.3kiB/164.3kiB
Sie können feste Schlüssel und benutzerdefinierte Objektmetadaten als Teil des Objektuploads mithilfe von Befehls-Flags festlegen.
Clientbibliotheken
C++
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C++ API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
C#
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C# API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Go
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Go API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Java
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Java API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Im folgenden Beispiel wird ein einzelnes Objekt hochgeladen:
Im folgenden Beispiel werden mehrere Objekte gleichzeitig hochgeladen:
Im folgenden Beispiel werden alle Objekte mit einem gemeinsamen Präfix gleichzeitig hochgeladen:
Node.js
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Node.js API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Im folgenden Beispiel wird ein einzelnes Objekt hochgeladen:
Im folgenden Beispiel werden mehrere Objekte gleichzeitig hochgeladen:
Im folgenden Beispiel werden alle Objekte mit einem gemeinsamen Präfix gleichzeitig hochgeladen:
PHP
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage PHP API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Python API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Im folgenden Beispiel wird ein einzelnes Objekt hochgeladen:
Im folgenden Beispiel werden mehrere Objekte gleichzeitig hochgeladen:
Im folgenden Beispiel werden alle Objekte mit einem gemeinsamen Präfix gleichzeitig hochgeladen:
Ruby
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Ruby API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Terraform
Sie können eine Terraform-Ressource verwenden, um ein Objekt hochzuladen.
Es muss entweder content
oder source
angegeben werden.
REST APIs
JSON API
Die JSON API unterscheidet zwischen Medienuploads, bei denen nur Objektdaten in der Anfrage enthalten sind, und mehrteiligen JSON API-Uploads, bei denen Objektdaten und Objektmetadaten in die Anfrage aufgenommen sind.
Medienupload (ein Upload mit einer einzigen Anfrage ohne Objektmetadaten)
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Alternativ können Sie mit dem OAuth 2.0 Playground ein Zugriffstoken erstellen und in den Header
Authorization
einfügen.Verwenden Sie
cURL
, um die JSON API mit einerPOST
-Objektanfrage aufzurufen:curl -X POST --data-binary @OBJECT_LOCATION \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ "https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o?uploadType=media&name=OBJECT_NAME"
Dabei gilt:
OBJECT_LOCATION
ist der lokale Pfad zu Ihrem Objekt. Beispiel:Desktop/dog.png
.OBJECT_CONTENT_TYPE
ist der Inhaltstyp des Objekts. Beispiel:image/png
.BUCKET_NAME
ist der Name des Buckets, in den Sie das Objekt hochladen. Beispiel:my-bucket
.OBJECT_NAME
ist der URL-codierte Name, den Sie dem Objekt geben möchten. Beispiel:pets/dog.png
, URL-codiert alspets%2Fdog.png
.
Mehrteiliger JSON API-Upload (ein Upload mit einer einzigen Anfrage, die Objektmetadaten enthält)
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Alternativ können Sie mit dem OAuth 2.0 Playground ein Zugriffstoken erstellen und in den Header
Authorization
einfügen.Erstellen Sie eine Datei
multipart/related
, die folgende Informationen enthält:--BOUNDARY_STRING Content-Type: application/json; charset=UTF-8 OBJECT_METADATA --BOUNDARY_STRING Content-Type: OBJECT_CONTENT_TYPE OBJECT_DATA --BOUNDARY_STRING--
Dabei gilt:
BOUNDARY_STRING
ist ein String, den Sie definieren, um die verschiedenen Teile der mehrteiligen Datei zu identifizieren. Beispiel:separator_string
.OBJECT_METADATA
sind Metadaten, die Sie im JSON-Format in die Datei einschließen möchten. Dieser Bereich sollte mindestens einname
-Attribut für das Objekt enthalten, z. B.{"name": "myObject"}
.OBJECT_CONTENT_TYPE
ist der Inhaltstyp des Objekts. Beispiel:text/plain
.OBJECT_DATA
sind die Daten für das Objekt.
Beispiele:
--separator_string Content-Type: application/json; charset=UTF-8 {"name":"my-document.txt"} --separator_string Content-Type: text/plain This is a text file. --separator_string--
Verwenden Sie
cURL
, um die JSON API mit einerPOST
-Objektanfrage aufzurufen:curl -X POST --data-binary @MULTIPART_FILE_LOCATION \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: multipart/related; boundary=BOUNDARY_STRING" \ -H "Content-Length: MULTIPART_FILE_SIZE" \ "https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o?uploadType=multipart"
Dabei gilt:
MULTIPART_FILE_LOCATION
ist der lokale Pfad zu der mehrteiligen Datei, die Sie in Schritt 2 erstellt haben. Beispiel:Desktop/my-upload.multipart
BOUNDARY_STRING
ist der Grenzstring, den Sie in Schritt 2 definiert haben. Beispiel:my-boundary
.MULTIPART_FILE_SIZE
ist die Gesamtgröße der mehrteiligen Datei in Byte, die Sie in Schritt 2 erstellt haben. Beispiel:2000000
BUCKET_NAME
ist der Name des Buckets, in den Sie das Objekt hochladen. Beispiel:my-bucket
.
Ist die Anfrage erfolgreich, gibt der Server den Statuscode HTTP 200 OK
zusammen mit den Metadaten der Datei zurück.
XML API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Alternativ können Sie mit dem OAuth 2.0 Playground ein Zugriffstoken erstellen und in den Header
Authorization
einfügen.Verwenden Sie
cURL
, um die XML API mit einerPUT
-Objektanfrage aufzurufen:curl -X PUT --data-binary @OBJECT_LOCATION \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Dabei gilt:
OBJECT_LOCATION
ist der lokale Pfad zu Ihrem Objekt. Beispiel:Desktop/dog.png
.OBJECT_CONTENT_TYPE
ist der Inhaltstyp des Objekts. Beispiel:image/png
.BUCKET_NAME
ist der Name des Buckets, in den Sie das Objekt hochladen. Beispiel:my-bucket
.OBJECT_NAME
ist der URL-codierte Name, den Sie dem Objekt geben möchten. Beispiel:pets/dog.png
, URL-codiert alspets%2Fdog.png
.
Sie können zusätzliche Objektmetadaten im Rahmen des Objektuploads in den Headern der Anfrage auf die gleiche Weise festlegen, wie im obigen Beispiel Content-Type
festgelegt wird. Mit der XML API können Metadaten nur beim Schreiben eines Objekts, also beim Hochladen, Kopieren oder Ersetzen, festgelegt werden. Weitere Informationen finden Sie unter Objektmetadaten bearbeiten.
Nächste Schritte
- Vorgaben für die Benennung von Objekten
- Objekte von Ihrer Compute Engine-Instanz übertragen.
- Datenübertragungen von Cloudanbietern oder anderen Onlinequellen wie URL-Listen.
- Zugriff auf Objekte und Buckets steuern
- Metadaten Ihres Objekts ansehen, einschließlich der URL für das Objekt
Überzeugen Sie sich selbst
Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit von Cloud Storage in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
Cloud Storage kostenlos testen