Cloud Storage for Firebase دادههای شما را در یک سطل Google Cloud Storage ذخیره میکند - یک راهحل ذخیرهسازی شی در مقیاس اگزابایت با در دسترس بودن بالا و افزونگی جهانی. Firebase Admin SDK به شما امکان می دهد مستقیماً به سطل های Cloud Storage خود از محیط های ممتاز دسترسی داشته باشید. سپس می توانید از API های Google Cloud Storage برای دستکاری اشیاء ذخیره شده در سطل ها استفاده کنید.
Admin SDK همچنین به شما امکان می دهد URL های قابل اشتراک گذاری ایجاد کنید تا کاربران بتوانند اشیاء موجود در سطل های شما را دانلود کنند.
از یک سطل پیش فرض استفاده کنید
gs://
یا هر پیشوند پروتکل دیگری باشد. برای مثال، اگر URL سطل نمایش داده شده در کنسول Firebase gs:// PROJECT_ID .firebasestorage.app
است، رشته PROJECT_ID .firebasestorage.app
به Admin SDK ارسال کنید.
const { initializeApp, cert } = require('firebase-admin/app');
const { getStorage } = require('firebase-admin/storage');
const serviceAccount = require('./path/to/serviceAccountKey.json');
initializeApp({
credential: cert(serviceAccount),
storageBucket: '<BUCKET_NAME>.appspot.com'
});
const bucket = getStorage().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.
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.
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': 'PROJECT_ID .firebasestorage.app'
})
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.
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.
از سطل های سفارشی استفاده کنید
const bucket = getStorage().bucket('my-custom-bucket');
Bucket bucket = StorageClient.getInstance().bucket("my-custom-bucket");
bucket = storage.bucket('my-custom-bucket')
bucket, err := client.Bucket("my-custom-bucket")
از یک برنامه Firebase سفارشی استفاده کنید
const bucket = getStorage(customApp).bucket();
Bucket bucket = StorageClient.getInstance(customApp).bucket();
bucket = storage.bucket(app=custom_app)
otherClient, err := otherApp.Storage(context.Background())
bucket, err := otherClient.Bucket("other-app-bucket")
یک URL دانلود قابل اشتراکگذاری دریافت کنید
const { getStorage, getDownloadURL } = require('firebase-admin/storage');
const fileRef = getStorage().bucket('my-bucket').file('my-file');
const downloadURL= await getDownloadURL(fileRef);