Auf dieser Seite erfahren Sie, wie Sie Cloud Storage-Objekte in einem einzelnen Objekt zusammenfassen. Eine Zusammensetzungsanfrage nimmt zwischen 1 und 32 Objekte an und erstellt ein neues zusammengesetztes Objekt. Das zusammengesetzte Objekt ist eine Verkettung der Quellobjekte in der Reihenfolge, in der sie in der Anfrage angegeben wurden.
Beachten Sie beim Zusammensetzen von Objekten Folgendes:
- Die Quellobjekte sind vom Zusammensetzungsprozess nicht betroffen. Wenn es sich dabei um temporäre Objekte handeln soll, müssen Sie diese löschen, sobald Sie die Zusammensetzung erfolgreich abgeschlossen haben.
- Da für andere Speicherklassen Gebühren für vorzeitiges Löschen anfallen, sollten Sie für temporäre Objekte immer Standard Storage verwenden.
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 Erstellen von Objekten benötigen. Diese vordefinierte Rolle enthält die Berechtigungen, die zum Erstellen von Objekten 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 erforderlich, wenn Sie dem erstellten Objekt den gleichen Namen wie einem Objekt geben möchten, das bereits im Bucket vorhanden ist.
storage.objects.get
storage.objects.list
- Diese Berechtigung ist nur erforderlich, wenn Sie Platzhalter verwenden möchten, um Objekte mit einem gemeinsamen Präfix zusammenzusetzen, ohne im Google Cloud CLI-Befehl jedes Objekt einzeln auflisten zu müssen.
Wenn Sie für das von Ihnen erstellte Objekt eine Aufbewahrungskonfiguration festlegen möchten, benötigen Sie außerdem die Berechtigung storage.objects.setRetention
. Bitten Sie den Administrator, Ihnen die Rolle „Storage-Objekt-Administrator“ (roles/storage.objectAdmin
) anstelle der Rolle „Storage-Objekt-Nutzer“ (roles/storage.objectUser
) 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.
Zusammengesetztes Objekt erstellen
Befehlszeile
Führen Sie den Befehl gcloud storage objects compose
aus:
gcloud storage objects compose gs://BUCKET_NAME/SOURCE_OBJECT_1 gs://BUCKET_NAME/SOURCE_OBJECT_2 gs://BUCKET_NAME/COMPOSITE_OBJECT_NAME
Wobei:
BUCKET_NAME
ist der Name des Buckets, der die Quellobjekte enthält.SOURCE_OBJECT_1
undSOURCE_OBJECT_2
sind die Namen der Quellobjekte, die bei der Objektzusammensetzung verwendet werden sollen.COMPOSITE_OBJECT_NAME
ist der Name, den Sie dem Ergebnis der Objektzusammensetzung geben.
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 Clientbibliotheken 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 Clientbibliotheken 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 Clientbibliotheken 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 Clientbibliotheken einrichten.
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 Clientbibliotheken einrichten.
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 Clientbibliotheken 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 Clientbibliotheken einrichten.
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 Clientbibliotheken einrichten.
REST APIs
JSON API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Erstellen Sie eine JSON-Datei, die folgende Informationen enthält:
{ "sourceObjects": [ { "name": "SOURCE_OBJECT_1" }, { "name": "SOURCE_OBJECT_2" } ], "destination": { "contentType": "COMPOSITE_OBJECT_CONTENT_TYPE" } }
Dabei gilt:
SOURCE_OBJECT_1
undSOURCE_OBJECT_2
sind die Namen der Quellobjekte, die in der Objektzusammensetzung verwendet werden sollen.COMPOSITE_OBJECT_CONTENT_TYPE
ist der Inhaltstyp des resultierenden zusammengesetzten Objekts.
Verwenden Sie
cURL
, um die JSON API mit einerPOST
-Objektanfrage aufzurufen:curl -X POST --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/COMPOSITE_OBJECT_NAME/compose"
Wobei:
JSON_FILE_NAME
ist der Name der Datei, die Sie im vorherigen Schritt erstellt haben.BUCKET_NAME
ist der Name des Buckets, der die Quellobjekte enthält.COMPOSITE_OBJECT_NAME
ist der Name, den Sie dem Ergebnis der Objektzusammensetzung geben.
Wenn der Vorgang erfolgreich abgeschlossen wurde, ist die Antwort eine Objektressource für das resultierende zusammengesetzte Objekt.
XML API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Erstellen Sie eine XML-Datei, die folgende Information enthält:
<ComposeRequest> <Component> <Name>SOURCE_OBJECT_1</Name> </Component> <Component> <Name>SOURCE_OBJECT_2</Name> </Component> </ComposeRequest>
Dabei gilt:
SOURCE_OBJECT_1
undSOURCE_OBJECT_2
sind die Namen der Quellobjekte, die in der Objektzusammensetzung verwendet werden sollen.
Verwenden Sie
cURL
, um die XML API mit einerPUT
-Objektanfrage und dem Abfragestringparametercompose
aufzurufen:curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: COMPOSITE_OBJECT_CONTENT_TYPE" \ "https://storage.googleapis.com/BUCKET_NAME/COMPOSITE_OBJECT_NAME?compose"
Wobei:
XML_FILE_NAME
ist der Name der Datei, die Sie im vorherigen Schritt erstellt haben.COMPOSITE_OBJECT_CONTENT_TYPE
ist der Inhaltstyp des resultierenden zusammengesetzten Objekts.BUCKET_NAME
ist der Name des Buckets, der die Quellobjekte enthält.COMPOSITE_OBJECT_NAME
ist der Name, den Sie dem Ergebnis der Objektzusammensetzung geben.
Wenn der Vorgang erfolgreich abgeschlossen wurde, wird ein leerer Antworttext zurückgegeben.
Nächste Schritte
- Mehr zu zusammengesetzten Objekten
- Anfragevorbedingungen verwenden, um Race-Bedingungen zu verhindern