Google is committed to advancing racial equity for Black communities. See how.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Einführung in die Admin Cloud Storage API

Cloud Storage für Firebase speichert Ihre Daten in einem Google Cloud Storage- Bucket - einer Objektspeicherlösung im Exabyte-Maßstab mit hoher Verfügbarkeit und globaler Redundanz. Mit dem Firebase Admin SDK können Sie von privilegierten Umgebungen aus direkt auf Ihre Cloud Storage-Buckets zugreifen. Anschließend können Sie Google Cloud Storage-APIs verwenden , um die in den Buckets gespeicherten Objekte zu bearbeiten.

Verwenden Sie einen Standard-Bucket

Sie können einen Standard-Bucket-Namen angeben, wenn Sie das Admin-SDK initialisieren. Anschließend können Sie einen authentifizierten Verweis auf diesen Bucket abrufen. Der Bucket-Name darf weder gs:// noch andere Protokollpräfixe enthalten. Wenn die in der Firebase-Konsole angezeigte Bucket-URL beispielsweise gs://bucket-name.appspot.com , übergeben Sie die Zeichenfolge bucket-name.appspot.com an das Admin-SDK.

Node.js

var admin = require("firebase-admin");

var serviceAccount = require("path/to/serviceAccountKey.json");

admin.initializeApp({
    credential: admin.credential.cert(serviceAccount),
    storageBucket: "<BUCKET_NAME>.appspot.com"
});

var bucket = admin.storage().bucket();

// 'bucket' is an object defined in the @google-cloud/storage library.
// See https://googlecloudplatform.github.io/google-cloud-node/#/docs/storage/latest/storage/bucket
// for more details.

Java

FileInputStream serviceAccount = new FileInputStream("path/to/serviceAccountKey.json");

FirebaseOptions options = FirebaseOptions.builder()
    .setCredentials(GoogleCredentials.fromStream(serviceAccount))
    .setStorageBucket("<BUCKET_NAME>.appspot.com")
    .build();
FirebaseApp.initializeApp(options);

Bucket bucket = StorageClient.getInstance().bucket();

// 'bucket' is an object defined in the google-cloud-storage Java library.
// See http://googlecloudplatform.github.io/google-cloud-java/latest/apidocs/com/google/cloud/storage/Bucket.html
// for more details.

Python

import firebase_admin
from firebase_admin import credentials
from firebase_admin import storage

cred = credentials.Certificate('path/to/serviceAccountKey.json')
firebase_admin.initialize_app(cred, {
    'storageBucket': '<BUCKET_NAME>.appspot.com'
})

bucket = storage.bucket()

# 'bucket' is an object defined in the google-cloud-storage Python library.
# See https://googlecloudplatform.github.io/google-cloud-python/latest/storage/buckets.html
# for more details.

Gehen

import (
	"context"
	"log"

	firebase "firebase.google.com/go/v4"
	"firebase.google.com/go/v4/auth"
	"google.golang.org/api/option"
)

config := &firebase.Config{
	StorageBucket: "<BUCKET_NAME>.appspot.com",
}
opt := option.WithCredentialsFile("path/to/serviceAccountKey.json")
app, err := firebase.NewApp(context.Background(), config, opt)
if err != nil {
	log.Fatalln(err)
}

client, err := app.Storage(context.Background())
if err != nil {
	log.Fatalln(err)
}

bucket, err := client.DefaultBucket()
if err != nil {
	log.Fatalln(err)
}
// 'bucket' is an object defined in the cloud.google.com/go/storage package.
// See https://godoc.org/cloud.google.com/go/storage#BucketHandle
// for more details.

Sie können die vom Admin SDK zurückgegebenen Bucket-Referenzen in Verbindung mit den offiziellen Google Cloud Storage-Client-Bibliotheken verwenden , um Inhalte in den Buckets hochzuladen, herunterzuladen und zu ändern, die Ihren Firebase-Projekten zugeordnet sind. Beachten Sie, dass Sie Google Cloud Storage-Bibliotheken nicht authentifizieren müssen, wenn Sie das Firebase Admin SDK verwenden. Die vom Admin SDK zurückgegebenen Bucket-Referenzen sind bereits mit den Anmeldeinformationen authentifiziert, die zum Initialisieren Ihrer Firebase-App verwendet werden.

Verwenden Sie benutzerdefinierte Eimer

Wenn Sie einen anderen Cloud-Speicher-Bucket als den oben angegebenen Standard verwenden oder mehrere Cloud-Speicher-Buckets in einer einzigen App verwenden möchten, können Sie einen Verweis auf einen benutzerdefinierten Bucket wie unten gezeigt abrufen:

Node.js

var bucket = admin.storage().bucket("my-custom-bucket");

Java

Bucket bucket = StorageClient.getInstance().bucket("my-custom-bucket");

Python

bucket = storage.bucket('my-custom-bucket')

Gehen

 bucket, err := client.Bucket("my-custom-bucket")

Verwenden Sie eine benutzerdefinierte Firebase-App

Wenn Sie eine kompliziertere Anwendung erstellen, die mit mehreren Firebase-Apps interagiert, können Sie wie folgt auf die Cloud-Speicher-Buckets zugreifen, die einer bestimmten Firebase-App zugeordnet sind:

Node.js

var bucket = customApp.storage().bucket();

Java

Bucket bucket = StorageClient.getInstance(customApp).bucket();

Python

bucket = storage.bucket(app=custom_app)

Gehen

otherClient, err := otherApp.Storage(context.Background())
bucket, err := otherClient.Bucket("other-app-bucket")

Google Cloud Storage-Clientbibliotheken

Die Firebase Admin-SDKs hängen von den Google Cloud Storage-Clientbibliotheken ab , um Cloud Storage-Zugriff bereitzustellen. Die vom Admin SDK zurückgegebenen Bucket-Referenzen sind Objekte, die in diesen Bibliotheken definiert sind. In der Dokumentation und den API-Referenzen der Google Cloud Storage-Clientbibliotheken erfahren Sie, wie Sie die zurückgegebenen Bucket-Referenzen in Anwendungsfällen wie dem Hoch- und Herunterladen von Dateien verwenden.