Anfrageendpunkte

Auf dieser Seite werden die verschiedenen Anfrageendpunkte (URIs) erläutert, mit denen Sie auf Cloud Storage zugreifen können. Cloud Storage unterstützt HTTP/1.1-, HTTP/2- und HTTP/3-Protokolle.

Typische API-Anfragen

Verwenden Sie die folgenden URIs, um Anfragen direkt an eine der Cloud Storage APIs zu senden:

JSON API

  • Verwenden Sie für JSON API-Anfragen mit Ausnahme von Objektuploads den folgenden Endpunkt. Ersetzen Sie dabei PLACEHOLDER durch die entsprechenden Werte:

    https://storage.googleapis.com/storage/v1/PATH_TO_RESOURCE
  • Verwenden Sie für Objektuploads über die JSON API folgenden Endpunkt. Ersetzen Sie dabei PLACEHOLDER durch die entsprechenden Werte:

    https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o
  • Verwenden Sie für Batchanfragen den folgenden Endpunkt. Ersetzen Sie dabei PLACEHOLDER durch die entsprechenden Werte:

    https://storage.googleapis.com/batch/storage/v1/PATH_TO_RESOURCE
  • Optional können Sie für JSON API-Objektdownloads den folgenden Endpunkt verwenden und dabei PLACEHOLDER durch die entsprechenden Werte ersetzen:

    https://storage.googleapis.com/download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media

JSON API-Endpunkte akzeptieren ausschließlich HTTPS-Anfragen.

XML API

  • Bei XML API-Anfragen können Sie entweder den Endpunkt des Typs Virtual hosted-style oder des Typs Path-style verwenden. Ersetzen Sie dazu PLACEHOLDER durch die entsprechenden Werte:

    Virtual hosted-style:

    https://BUCKET_NAME.storage.googleapis.com/OBJECT_NAME
    Path-style:
    https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME

XML API-Endpunkte unterstützen die Verschlüsselung mit Secure Socket Layer (SSL), das heißt, Sie können entweder HTTP oder HTTPS verwenden. HTTPS wird empfohlen, insbesondere wenn die Authentifizierung für Cloud Storage mit OAuth 2.0 erfolgt.

Informationen zu Verbindungen über einen Proxy finden Sie unter Fehlerbehebung.

URI-Pfadteile codieren

Zusätzlich zu den allgemeinen Überlegungen zur Bucket-Benennung und zur Objektbenennung sollten Sie aus Gründen der Kompatibilität mit Cloud Storage-Tools die folgenden Zeichen codieren, wenn sie im Objektnamen oder im Abfragestring eines Anfrage-URI vorkommen:

!, #, $, &, ', (, ), *, +, ,, /, :, ;, =, ?, @, [, ] und Leerzeichen.

Wenn Sie beispielsweise eine JSON API-GET-Anfrage für das Objekt foo??bar im Bucket example-bucket senden, sollte der Anfrage-URI so aussehen:

GET https://storage.googleapis.com/storage/v1/b/example-bucket/o/foo%3f%3fbar

Beachten Sie, dass nicht alle aufgelisteten Zeichen in jedem Szenario codiert sein müssen. Darüber hinaus wird die Codierung in der Regel von Clientbibliotheken wie den Cloud Storage-Clientbibliotheken für Sie übernommen, sodass Sie bei Verwendung solcher Tools den Namen des Rohobjekts übergeben können.

Weitere Informationen zur Verwendung von Prozentcodierung für URIs finden Sie in RFC 3986 im Abschnitt 3.3 Pfad.

Cloud Console-Endpunkte

In der Cloud Console greifen Sie über die folgenden URLs auf verschiedene Ressourcen zu:

Ressource URL
Bucket-Liste für ein Projekt https://console.cloud.google.com/storage/browser?project=PROJECT_ID
Objektliste für einen Bucket https://console.cloud.google.com/storage/browser/BUCKET_NAME
Details zu einem Objekt https://console.cloud.google.com/storage/browser/_details/BUCKET_NAME/OBJECT_NAME

Benutzerdefinierte Domains

Wenn Sie eine eigene Domain haben, können Sie deren URIs einem oder mehreren Google Cloud-Diensten zuordnen, einschließlich Cloud Storage-Buckets. Der Begriff Bucket-gebundener Hostname wird manchmal verwendet, um diesen Cloud Storage-Anfrageendpunkt zu beschreiben. Zum Verbinden einer benutzerdefinierten Domain mit einem Cloud Storage-Bucket erstellen Sie eine A- oder CNAME-Weiterleitung in Ihrem DNS-Eintrag.

A-Einträge

Wenn Sie eine benutzerdefinierte Domain mit einem Cloud Storage-Bucket verbinden, sollten Sie in der Regel einen A-Eintrag verwenden.

  • A-Datensätze unterstützen HTTPS-Anfragen.
  • Mit A-Einträgen kann Traffic von einem einzelnen Hostnamen an mehrere Buckets sowie an andere Google Cloud-Dienste gesendet werden.
  • Datensätze vom Typ A geben keine Einschränkungen für den Bucket-Namen an.

Der Nachteil bei der Verwendung von A-Einträgen ist, dass dadurch eine zusätzliche Einrichtung und Verwendung zusätzlicher Google Cloud-Ressourcen erforderlich ist. Weitere Informationen zur Verwendung benutzerdefinierter Domains mit A-Einträgen finden Sie unter Load-Balancer und SSL-Zertifikat einrichten.

CNAME-Einträge

Beim Verbinden einer benutzerdefinierten Domain mit einem Cloud Storage-Bucket können Sie einen CNAME-Eintrag verwenden. Beachten Sie jedoch, dass dabei bestimmte Einschränkungen gelten:

  • Datensätze vom Typ CNAME unterstützen nur HTTP-Anfragen.
  • Datensätze vom Typ CNAME können Traffic nur von einem bestimmten Hostnamen an einen einzelnen Bucket weiterleiten.
  • Für CNAME-Datensätze müssen der Hostname und der zugehörige Bucket-Name übereinstimmen, und Sie müssen den Bucket-Namen validieren.
  • CNAME-Einträge können nur für Subdomains wie www.mydomain.com und nicht für Top-Level-Domains wie mydomain.com verwendet werden.

Wenn Sie CNAME-Einträge verwenden, muss der folgende URI dem Hostnamen-Teil Ihres CNAME-Eintrags hinzugefügt werden:

c.storage.googleapis.com.

Beispiel: Ihre Domain ist example.com und Sie möchten Ihren Kunden Reisekarten zur Verfügung stellen. In diesem Fall können Sie in Cloud Storage einen Bucket namens travel-maps.example.com erstellen und dann im DNS einen CNAME-Eintrag anlegen, der Anfragen von travel-maps.example.com an den Cloud Storage-URI weiterleitet. Dazu veröffentlichen Sie den folgenden CNAME-Eintrag im DNS:

NAME                      TYPE     DATA
travel-maps               CNAME    c.storage.googleapis.com.

Dadurch können Ihre Kunden folgende URL nutzen, um auf eine Karte von Paris zuzugreifen:

http://travel-maps.example.com/paris.jpg

Ihr Domainregistrierungsdienst sollte Ihnen die Möglichkeit bieten, Ihre Domain zu verwalten und unter anderem auch einen CNAME-Ressourceneintrag hinzuzufügen. Wenn Sie beispielsweise Google Domains verwenden, finden Sie auf der Hilfeseite für Google Domains im Drop-down-Abschnitt Ressourceneinträge eine Anleitung zum Einfügen eines Ressourceneintrags.

Authentifizierte Browserdownloads

Bei authentifizierten Browserdownloads wird eine cookiebasierte Authentifizierung verwendet. Bei der cookiebasierten Authentifizierung werden Nutzer aufgefordert, sich zum Nachweis ihrer Identität bei ihrem Google-Konto anzumelden. Das angegebene Google-Konto muss die entsprechende Berechtigung zum Herunterladen des Objekts haben. Wenn Sie beispielsweise die Identitäts- und Zugriffsverwaltung verwenden, um den Zugriff auf Ihre Objekte zu steuern, sollte das Google-Konto des Nutzers über die Berechtigung storage.objects.viewer verfügen, die in der Rolle Storage-Objekt-Betrachter erteilt wird.

Verwenden Sie die folgende URL, um ein Objekt mithilfe der cookiebasierten Authentifizierung herunterzuladen. Ersetzen Sie PLACEHOLDER dabei durch die entsprechenden Werte:

https://storage.cloud.google.com/BUCKET_NAME/OBJECT_NAME

Wenn Sie beispielsweise ein Bild namens london.jpg aus Ihrem Bucket example-maps freigeben würden, wäre die URL:

https://storage.cloud.google.com/example-maps/london.jpg

Für authentifizierte Browserdownloads muss HTTPS verwendet werden. Bei Verwendung von HTTP erfolgt eine Weiterleitung an HTTPS.

Zugriff auf öffentliche Objekte

Alle Anfragen an den URI storage.cloud.google.com erfordern eine Authentifizierung. Dies gilt auch dann, wenn allUsers berechtigt sind, auf ein Objekt zuzugreifen. Wenn Sie möchten, dass Nutzer anonym zugängliche Objekte ohne Authentifizierung herunterladen, verwenden Sie den URI storage.googleapis.com, der unter Direkte API-Anfragen dokumentiert ist. Weitere Informationen und Beispiele finden Sie unter Auf öffentliche Daten zugreifen.

Weitere Informationen