Admin Cloud Storage API के बारे में जानकारी

Cloud Storage for Firebase आपके डेटा को Google Cloud Storage बकेट में सेव करता है. यह एक ऐसा ऑब्जेक्ट स्टोरेज समाधान है जो ज़्यादा उपलब्धता और दुनिया भर में मौजूद डुप्लीकेट कॉपी के साथ, एक्जाबाइट के स्केल पर काम करता है. Firebase Admin SDK टूल की मदद से, ऐक्सेस की विशेष सुविधाओं वाले एनवायरमेंट से सीधे अपनी Cloud Storage बकेट को ऐक्सेस किया जा सकता है. इसके बाद, बकेट में सेव किए गए ऑब्जेक्ट में बदलाव करने के लिए, Google Cloud Storage एपीआई का इस्तेमाल किया जा सकता है.

Admin SDK की मदद से, शेयर किए जा सकने वाले यूआरएल बनाए जा सकते हैं, ताकि उपयोगकर्ता अपनी बकेट में ऑब्जेक्ट डाउनलोड कर सकते हैं.

डिफ़ॉल्ट बकेट का इस्तेमाल करें

Admin SDK टूल को शुरू करते समय, डिफ़ॉल्ट बकेट का नाम तय किया जा सकता है. इसके बाद, इस बकेट का पुष्टि किया गया रेफ़रंस वापस पाया जा सकता है. बकेट के नाम में gs:// या कोई अन्य प्रोटोकॉल प्रीफ़िक्स नहीं होना चाहिए. उदाहरण के लिए, अगर बकेट यूआरएल Firebase कंसोल gs://bucket-name.appspot.com है, स्ट्रिंग bucket-name.appspot.com को पास करें एडमिन SDK टूल.

Node.js

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.

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.

शुरू करें

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.

एडमिन SDK से मिले बकेट रेफ़रंस का इस्तेमाल, आधिकारिक Google Cloud Storage क्लाइंट लाइब्रेरी आपके वीडियो से जुड़े बकेट में कॉन्टेंट अपलोड, डाउनलोड, और मॉडिफ़ाई करने के लिए Firebase प्रोजेक्ट. ध्यान दें कि आपको पुष्टि करने की ज़रूरत नहीं है Firebase एडमिन SDK का इस्तेमाल करते समय Google Cloud Storage लाइब्रेरी. Admin SDK टूल से मिले बकेट रेफ़रंस की पुष्टि, आपके Firebase ऐप्लिकेशन को शुरू करने के लिए इस्तेमाल किए गए क्रेडेंशियल से पहले ही हो चुकी होती है.

कस्टम बकेट का इस्तेमाल करना

अगर आपको डिफ़ॉल्ट बकेट के बजाय Cloud Storage बकेट का इस्तेमाल करना है ऊपर दिया गया है या एक ही ऐप्लिकेशन में कई Cloud Storage बकेट का इस्तेमाल करें, नीचे दिए गए तरीके से, पसंद के मुताबिक बकेट का रेफ़रंस फिर से पाया जा सकता है:

Node.js

const bucket = getStorage().bucket('my-custom-bucket');

Java

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

Python

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

शुरू करें

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

कस्टम Firebase ऐप्लिकेशन का इस्तेमाल करना

अगर आप ऐसा ज़्यादा जटिल ऐप्लिकेशन बना रहे हैं जो एक से ज़्यादा यूआरएल Firebase ऐप्लिकेशन, आप किसी खास Firebase ऐप्लिकेशन से Cloud Storage बकेट इस तरह जुड़ी हैं:

Node.js

const bucket = getStorage(customApp).bucket();

Java

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

Python

bucket = storage.bucket(app=custom_app)

शुरू करें

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

शेयर किया जा सकने वाला डाउनलोड यूआरएल पाएं

अपनी बकेट में सेव की गई फ़ाइलों के लिए, Admin SDK का इस्तेमाल करके ऐसा डाउनलोड यूआरएल जनरेट किया जा सकता है जिसकी समयसीमा खत्म न हो. इस यूआरएल का इस्तेमाल करने वाला कोई भी व्यक्ति, हमेशा के लिए फ़ाइल ऐक्सेस करने के लिए.

Node.js

const { getStorage, getDownloadURL } = require('firebase-admin/storage');

const fileRef = getStorage().bucket('my-bucket').file('my-file');
const downloadURL= await getDownloadURL(fileRef);

Google Cloud Storage क्लाइंट लाइब्रेरी

Cloud Storage ऐक्सेस देने के लिए, Firebase Admin SDK टूल, Google Cloud Storage क्लाइंट लाइब्रेरी पर निर्भर करते हैं. बकेट रेफ़रंस एडमिन SDK टूल, इन लाइब्रेरी में बताए गए ऑब्जेक्ट होते हैं. दस्तावेज़ देखें और Google Cloud Storage क्लाइंट लाइब्रेरी के एपीआई रेफ़रंस का इस्तेमाल करके, फ़ाइल जैसे उपयोग के मामलों में लौटाए गए बकेट संदर्भ का इस्तेमाल करें अपलोड करें और डाउनलोड करें पर टैप करें.