आरक्षित URL से Firebase SDK लोड करें

फायरबेस होस्टिंग आपकी साइट में /__ से शुरू होने वाले यूआरएल को सुरक्षित रखता है। यह आरक्षित नाम स्थान फायरबेस होस्टिंग के साथ अन्य फायरबेस उत्पादों का उपयोग करना आसान बनाता है।

ये आरक्षित URL तब उपलब्ध होते हैं जब आप Firebase ( firebase deploy ) पर परिनियोजित करते हैं या जब आप किसी स्थानीय सर्वर ( firebase serve ) पर अपना ऐप चलाते हैं।

आरक्षित URL के लिए स्क्रिप्ट जोड़ें

चूंकि फायरबेस होस्टिंग को तैनात किए जाने पर HTTP / 2 पर परोसा जाता है, आप उसी मूल से फ़ाइलों को लोड करके प्रदर्शन को बढ़ा सकते हैं। फ़ायरबेस होस्टिंग इस प्रकार स्वरूपित विशेष यूआरएल से फायरबेस जावास्क्रिप्ट एसडीके के सभी संस्करणों की सेवा करता है:

/__/firebase/JS_SDK_VERSION/FIREBASE_SDK_NAME.js

हम दृढ़ता से अनुशंसा करते हैं कि आप केवल उन्हीं पुस्तकालयों को लोड करें जिनका उपयोग आप अपने ऐप में करते हैं। उदाहरण के लिए, केवल प्रमाणीकरण और Cloud Firestore को शामिल करने के लिए, निम्न स्क्रिप्ट को अपने <body> टैग के निचले भाग में जोड़ें, लेकिन इससे पहले कि आप किसी भी Firebase सेवाओं का उपयोग करें:

<body>
  <!-- Insert these scripts at the bottom of the HTML, but before you use any Firebase services -->
  <!-- Firebase App (the core Firebase SDK) is always required and must be listed first -->
  <script src="/__/firebase/8.10.1/firebase-app.js"></script>

  <!-- Add Firebase products that you want to use -->
  <script src="/__/firebase/8.10.1/firebase-auth.js"></script>
  <script src="/__/firebase/8.10.1/firebase-firestore.js"></script>
</body>

एसडीके ऑटो-कॉन्फ़िगरेशन

स्वचालित एसडीके कॉन्फ़िगरेशन एक ही कोडबेस से कई वातावरण (जैसे देव, स्टेजिंग और उत्पादन) को प्रबंधित करना आसान बनाता है। आरक्षित होस्टिंग यूआरएल पर भरोसा करके, आप एक ही कोड को कई फायरबेस प्रोजेक्ट्स में तैनात कर सकते हैं।

एसडीके को स्वयं होस्ट करने के अलावा, आरक्षित नामस्थान होस्टिंग साइट से जुड़े फायरबेस प्रोजेक्ट के लिए एसडीके को प्रारंभ करने के लिए आवश्यक सभी कॉन्फ़िगरेशन भी प्रदान करता है। यह फायरबेस कॉन्फ़िगरेशन और एसडीके इनिशियलाइज़ेशन एक स्क्रिप्ट द्वारा प्रदान किया जाता है जिसे आप सीधे शामिल कर सकते हैं:

<!-- Load the Firebase SDKs before loading this file -->
<script src="/__/firebase/init.js"></script>

जब आप Firebase पर परिनियोजित करते हैं या स्थानीय रूप से अपने ऐप का परीक्षण करते हैं, तो यह स्क्रिप्ट सक्रिय Firebase प्रोजेक्ट के लिए Firebase JavaScript SDK को स्वचालित रूप से कॉन्फ़िगर करती है और SDK को प्रारंभ करती है।

यदि आप स्वयं आरंभीकरण को नियंत्रित करना पसंद करते हैं, तो फायरबेस कॉन्फ़िगरेशन मान JSON रूप में भी उपलब्ध हैं:

fetch('/__/firebase/init.json').then(async response => {
  firebase.initializeApp(await response.json());
});

उपलब्ध फायरबेस जेएस एसडीके (आरक्षित होस्टिंग यूआरएल से)

फायरबेस उत्पाद पुस्तकालय संदर्भ (आरक्षित URL)
फायरबेस कोर
(आवश्यक)
<script src="/__/firebase/8.10.1/firebase-app.js"></script>
एनालिटिक्स
<script src="/__/firebase/8.10.1/firebase-analytics.js"></script>
ऐप चेक
<script src="/__/firebase/8.10.1/firebase-app-check.js"></script>
प्रमाणीकरण
<script src="/__/firebase/8.10.1/firebase-auth.js"></script>
क्लाउड फायरस्टोर
<script src="/__/firebase/8.10.1/firebase-firestore.js"></script>
फायरबेस क्लाइंट एसडीके के लिए क्लाउड फ़ंक्शंस
<script src="/__/firebase/8.10.1/firebase-functions.js"></script>
क्लाउड मैसेजिंग
<script src="/__/firebase/8.10.1/firebase-messaging.js"></script>

क्लाउड संदेश सेवा का उपयोग करने के सर्वोत्तम अनुभव के लिए, Analytics के लिए Firebase SDK भी जोड़ें।

बादल भंडारण
<script src="/__/firebase/8.10.1/firebase-storage.js"></script>
निष्पादन की निगरानी
( बीटा रिलीज)
<script src="/__/firebase/8.10.1/firebase-performance.js"></script>
रीयलटाइम डेटाबेस
<script src="/__/firebase/8.10.1/firebase-database.js"></script>
रिमोट कॉन्फिग
( बीटा रिलीज)
<script src="/__/firebase/8.10.1/firebase-remote-config.js"></script>

Remote Config का उपयोग करने के सर्वोत्तम अनुभव के लिए, Analytics के लिए Firebase SDK भी जोड़ें।

फायरबेस जावास्क्रिप्ट एसडीके
(संपूर्ण एसडीके)
<script src="/__/firebase/8.10.1/firebase.js"></script>

प्रामाणिक सहायक

फायरबेस प्रमाणीकरण OAuth के माध्यम से प्रदाताओं के साथ प्रमाणीकरण पूरा करने के लिए विशेष जावास्क्रिप्ट और HTML प्रदान करने के लिए आरक्षित नाम स्थान का उपयोग करता है। यह प्रत्येक फायरबेस प्रोजेक्ट को एक अद्वितीय फायरबेस सबडोमेन रखने की अनुमति देता है, जिससे फायरबेस प्रमाणीकरण की सुरक्षा बढ़ जाती है।

इसके अतिरिक्त, यह आपको firebase.initializeApp() के authDomain विकल्प के लिए अपने स्वयं के कस्टम डोमेन का उपयोग करने की अनुमति देता है। अगर आप फायरबेस होस्टिंग के लिए एक कस्टम डोमेन कॉन्फ़िगर करते हैं, तो आप फायरबेस एसडीके को इनिशियलाइज़ करते समय उस कस्टम डोमेन (अपने web.app या firebaseapp.com सबडोमेन के बजाय) को भी निर्दिष्ट कर सकते हैं।

आरक्षित यूआरएल और सेवा कार्यकर्ता

यदि आप एक प्रोग्रेसिव वेब ऐप (PWA) बना रहे हैं, तो आप "नेविगेशन फ़ॉलबैक" वाला एक सर्विस वर्कर बना सकते हैं और डिफ़ॉल्ट रूप से एक विशिष्ट URL को रेंडर कर सकते हैं यदि यह प्री-कैच्ड आइटम्स की सूची से मेल नहीं खाता है।

यदि आप sw-precache लाइब्रेरी का उपयोग कर रहे हैं, तो आप एक नेविगेशन फ़ॉलबैक श्वेतसूची सेटिंग जोड़ सकते हैं जिसमें आरक्षित नाम स्थान शामिल नहीं है:

{
  navigateFallbackWhitelist: [/^(?!\/__).*/]
}

सामान्य तौर पर, बस याद रखें कि डबल-अंडरस्कोर नेमस्पेस फायरबेस उपयोग के लिए आरक्षित है और आपको अपने सेवा कार्यकर्ता में इन अनुरोधों को रोकना नहीं चाहिए।