Cloud Storage for Firebase की मदद से, उपयोगकर्ता जनरेट किया गया कॉन्टेंट अपलोड और शेयर किया जा सकता है. जैसे, इमेज और वीडियो. इससे आपके ऐप्लिकेशन में रिच मीडिया कॉन्टेंट बनाया जा सकता है. आपका डेटा, a Google Cloud Storage बकेट में सेव किया जाता है. यह an एक्साबाइट स्केल ऑब्जेक्ट स्टोरेज सलूशन है. इसमें डेटा की ज़्यादा अपटाइम और global रिडंडेंसी की सुविधा मिलती है. Cloud Storage for Firebase की मदद से, इन फ़ाइलों को सीधे मोबाइल डिवाइसों और वेब ब्राउज़र से सुरक्षित तरीके से अपलोड किया जा सकता है. साथ ही, यह खराब नेटवर्क की समस्या को आसानी से हल कर सकता है.
शुरू करने से पहले
अगर आपने अब तक वेब ऐप्लिकेशन के लिए, शुरू करने से जुड़ी गाइड नहीं पढ़ी है, तो उसे ज़रूर पढ़ें. इनमें ये शामिल हैं:
Firebase प्रोजेक्ट बनाना.
अपने वेब ऐप्लिकेशन को प्रोजेक्ट के साथ रजिस्टर करना और अपने ऐप्लिकेशन को Firebase से कनेक्ट करना. इसके लिए, अपने ऐप्लिकेशन में Firebase JS SDK और Firebase कॉन्फ़िगरेशन ऑब्जेक्ट जोड़ें.
पक्का करें कि आपका Firebase प्रोजेक्ट, इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान पर हो. Cloud Storage for Firebase का इस्तेमाल करने के लिए, यह ज़रूरी है. अगर Firebase और Google Cloudआपके लिए नए हैं, तो देखें कि क्या आपको 300 डॉलर का मुफ़्त क्रेडिट मिल सकता है.
डिफ़ॉल्ट Cloud Storage बकेट बनाना
Firebase कंसोल में, डेटाबेस और स्टोरेज > स्टोरेज पर जाएं.
अगर आपका प्रोजेक्ट, इस्तेमाल के हिसाब से पैसे चुकाने वाले ब्लेज़ प्लान पर नहीं है, तो आपको अपने प्रोजेक्ट को अपग्रेड करने के लिए कहा जाएगा.
शुरू करें पर क्लिक करें.
अपनी डिफ़ॉल्ट बकेट के लिए कोई जगह चुनें.
,US-CENTRAL1 , औरUS-EAST1 में मौजूद बकेट, Google Cloud Storage के "हमेशा के लिए मुफ़्त" टियर का फ़ायदा उठा सकती हैं. अन्य सभी जगहों पर मौजूद बकेट के लिए, Google Cloud Storageकीमत और इस्तेमाल से जुड़े नियम लागू होते हैं.US-WEST1अगर चाहें, तो बाद में एक से ज़्यादा बकेट बनाई जा सकती हैं. हर बकेट के लिए अलग जगह चुनी जा सकती है.
अपनी डिफ़ॉल्ट बकेट के लिए, Firebase Security Rules कॉन्फ़िगर करें. डेवलपमेंट के दौरान, सार्वजनिक ऐक्सेस के लिए अपने नियम सेट अप करें.
हो गया पर क्लिक करें.
अब Firebase कंसोल में बकेट देखी जा सकती है. इसके लिए,
डेटाबेस और स्टोरेज > स्टोरेज >
फ़ाइलें टैब पर जाएं.
आपकी डिफ़ॉल्ट बकेट के नाम का फ़ॉर्मैट PROJECT_ID.firebasestorage.app
सार्वजनिक ऐक्सेस सेट अप करना
Cloud Storage for Firebase नियमों की एक डिक्लेरेटिव भाषा उपलब्ध कराता है. इसकी मदद से, यह तय किया जा सकता है कि आपका डेटा कैसे स्ट्रक्चर किया जाना चाहिए, उसे कैसे इंडेक्स किया जाना चाहिए, और आपका डेटा कब पढ़ा और लिखा जा सकता है. डिफ़ॉल्ट रूप से, को पढ़ने और लिखने का ऐक्सेस सीमित होता है. इसलिए, सिर्फ़ पुष्टि किए गए उपयोगकर्ता ही डेटा पढ़ या लिख सकते हैं. Cloud Storage पुष्टि की सुविधा सेट अप किए बिना शुरू करने के लिए, सार्वजनिक ऐक्सेस के लिए अपने नियम कॉन्फ़िगर किए जा सकते हैं.Authentication
इससे Cloud Storage किसी के लिए भी उपलब्ध हो जाता है. यहां तक कि वे लोग भी इसे ऐक्सेस कर सकते हैं जो आपका ऐप्लिकेशन इस्तेमाल नहीं करते. इसलिए, पुष्टि की सुविधा सेट अप करने के बाद, Cloud Storage के ऐक्सेस को सीमित करना न भूलें.
Cloud Storage JS SDK जोड़ना और Cloud Storage को शुरू करना
JavaScript SDK को शुरू करते समय, आपको Cloud Storage बकेट का नाम बताना होगा.
कंसोल में, Cloud Storage बकेट का नाम देखा जा सकता है. इसके लिए, डेटाबेस और स्टोरेज > स्टोरेज > फ़ाइलें टैब पर जाएं.Firebase डिफ़ॉल्ट बकेट कब बनाई गई है, इस आधार पर बकेट का नाम इनमें से किसी एक फ़ॉर्मैट में होगा:
-
(डिफ़ॉल्ट बकेट, सितंबर 2024PROJECT_ID.firebasestorage.appको या उसके बाद बनाई गई) -
(लेगसी डिफ़ॉल्ट बकेट, सितंबर 2024PROJECT_ID.appspot.com**से पहले** बनाई गई)
एसडीके को शुरू करने के लिए, कोड का यह स्निपेट इस्तेमाल करें:
Web
import { initializeApp } from "firebase/app"; import { getStorage } from "firebase/storage"; // TODO: Replace the following with your app's Firebase project configuration // See: https://firebase.google.com/docs/web/learn-more#config-object const firebaseConfig = { // ... storageBucket: 'BUCKET_NAME' }; // Initialize Firebase const app = initializeApp(firebaseConfig); // Initialize Cloud Storage and get a reference to the service const storage = getStorage(app);
Web
import firebase from "firebase/app"; import "firebase/compat/storage"; // TODO: Replace the following with your app's Firebase project configuration // See: https://firebase.google.com/docs/web/learn-more#config-object const firebaseConfig = { // ... storageBucket: 'BUCKET_NAME' }; // Initialize Firebase firebase.initializeApp(firebaseConfig); // Initialize Cloud Storage and get a reference to the service const storage = firebase.storage();
अब Cloud Storage का इस्तेमाल किया जा सकता है!
अगला चरण क्या है? रेफ़रंस बनाने का तरीका जानें Cloud Storage.
ऐडवांस सेटअप
कुछ इस्तेमाल के मामलों में, अतिरिक्त सेटअप की ज़रूरत होती है:
- एक से ज़्यादा भौगोलिक इलाकों में Cloud Storage बकेट का इस्तेमाल करना
- अलग-अलग स्टोरेज क्लास में Cloud Storage बकेट का इस्तेमाल करना
- एक ही ऐप्लिकेशन में, पुष्टि किए गए एक से ज़्यादा उपयोगकर्ताओं के साथ Cloud Storage बकेट का इस्तेमाल करना
अगर आपके उपयोगकर्ता दुनिया भर में हैं और आपको उनका डेटा उनके आस-पास सेव करना है, तो पहला इस्तेमाल का मामला आपके लिए सही है. उदाहरण के लिए, अमेरिका, यूरोप, और एशिया में बकेट बनाई जा सकती हैं. इससे इन इलाकों में मौजूद उपयोगकर्ताओं का डेटा सेव किया जा सकता है और लेटेंसी कम की जा सकती है.
अगर आपके पास अलग-अलग ऐक्सेस पैटर्न वाला डेटा है, तो दूसरा इस्तेमाल का मामला आपके लिए मददगार है. उदाहरण के लिए: मल्टी-रीजनल या रीजनल बकेट सेट अप की जा सकती है. इसमें, फ़ोटो या अक्सर ऐक्सेस किया जाने वाला अन्य कॉन्टेंट सेव किया जा सकता है. इसके अलावा, नियरलाइन या कोल्डलाइन बकेट सेट अप की जा सकती है. इसमें, उपयोगकर्ता के बैकअप या कभी-कभी ऐक्सेस किया जाने वाला अन्य कॉन्टेंट सेव किया जा सकता है.
इनमें से किसी भी इस्तेमाल के मामले में, एक से ज़्यादा Cloud Storage बकेट का इस्तेमाल किया जा सकता है.
तीसरा इस्तेमाल का मामला तब काम आता है, जब Google Drive जैसा कोई ऐप्लिकेशन बनाया जा रहा हो. इसमें उपयोगकर्ता, एक से ज़्यादा लॉग इन किए गए खाते (उदाहरण के लिए, निजी खाता और ऑफ़िस का खाता) इस्तेमाल कर सकते हैं. हर अतिरिक्त खाते की पुष्टि करने के लिए, Firebase ऐप्लिकेशन के कस्टम इंस्टेंस का इस्तेमाल किया जा सकता है.
एक से ज़्यादा Cloud Storage बकेट का इस्तेमाल करना
अगर आपको Cloud Storage की कोई ऐसी बकेट इस्तेमाल करनी है जो इस गाइड में पहले बताई गई डिफ़ॉल्ट बकेट के अलावा है या एक ही ऐप्लिकेशन में Cloud Storage की एक से ज़्यादा बकेट इस्तेमाल करनी हैं, तो firebase.storage का एक इंस्टेंस बनाया जा सकता है. यह इंस्टेंस, आपकी कस्टम बकेट को रेफ़रंस करता है:
Web
import { getApp } from "firebase/app"; import { getStorage } from "firebase/storage"; // Get a non-default Storage bucket const firebaseApp = getApp(); const storage = getStorage(firebaseApp, "gs://my-custom-bucket");
Web
// Get a non-default Storage bucket var storage = firebase.app().storage("gs://my-custom-bucket");
इंपोर्ट की गई बकेट के साथ काम करना
Firebase में, किसी मौजूदा Cloud Storage बकेट को इंपोर्ट करते समय, आपको Firebase को इन फ़ाइलों को ऐक्सेस करने की अनुमति देनी होगी. इसके लिए, gsutilGoogle Cloud SDK में शामिल gsutil टूल का इस्तेमाल करें:
gsutil -m acl ch -r -u service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://BUCKET_NAME
Firebase प्रोजेक्ट के बारे में जानकारी में बताए गए तरीके से, अपने प्रोजेक्ट का नंबर देखा जा सकता है.
इससे नई बनाई गई बकेट पर कोई असर नहीं पड़ता, क्योंकि उनमें डिफ़ॉल्ट ऐक्सेस कंट्रोल सेट होता है. इससे Firebase को ऐक्सेस करने की अनुमति मिलती है. यह कुछ समय के लिए लागू किया गया है. आने वाले समय में, यह प्रोसेस अपने-आप पूरी हो जाएगी.
Firebase ऐप्लिकेशन के कस्टम इंस्टेंस का इस्तेमाल करना
अगर firebase.app.App के कस्टम इंस्टेंस का इस्तेमाल करके, कोई ज़्यादा जटिल ऐप्लिकेशन बनाया जा रहा है, तो firebase.storage.Storage का एक इंस्टेंस बनाया जा सकता है. यह इंस्टेंस, उस ऐप्लिकेशन के साथ शुरू होता है:
Web
import { getStorage } from "firebase/storage"; // Get the default bucket from a custom firebase.app.App const storage1 = getStorage(customApp); // Get a non-default bucket from a custom firebase.app.App const storage2 = getStorage(customApp, "gs://my-custom-bucket");
Web
// Get the default bucket from a custom firebase.app.App var storage = customApp.storage(); // Get a non-default bucket from a custom firebase.app.App var storage = customApp.storage("gs://my-custom-bucket");
अगले चरण
अपना ऐप्लिकेशन लॉन्च करने की तैयारी करना:
App Check की सुविधा चालू करें, ताकि यह पक्का किया जा सके कि सिर्फ़ आपके ऐप्लिकेशन, स्टोरेज बकेट को ऐक्सेस कर सकें.
Google Cloud कंसोल में, अपने प्रोजेक्ट के लिए बजट अलर्ट सेट अप करें.
इस्तेमाल और बिलिंग डैशबोर्ड पर Firebase कंसोल में नज़र रखें. इससे आपको Firebase की अलग-अलग सेवाओं में, अपने प्रोजेक्ट के इस्तेमाल की पूरी जानकारी मिलेगी. इस्तेमाल की ज़्यादा जानकारी पाने के लिए, Cloud Storage इस्तेमाल डैशबोर्ड पर भी जाएं.
Firebase लॉन्च करने की चेकलिस्ट की समीक्षा करें.