সংরক্ষিত URL থেকে Firebase SDK লোড করুন

Firebase Hosting আপনার সাইটে /__ দিয়ে শুরু হওয়া URL গুলি সংরক্ষণ করে। এই সংরক্ষিত নেমস্পেস Firebase Hosting এর সাথে অন্যান্য Firebase পণ্য ব্যবহার করা সহজ করে তোলে।

এই সংরক্ষিত URL গুলি Firebase ( firebase deploy ) এ স্থাপন করার সময় অথবা স্থানীয় সার্ভারে ( firebase serve ) আপনার অ্যাপ চালানোর সময় উভয় ক্ষেত্রেই উপলব্ধ।

সংরক্ষিত URL গুলির জন্য স্ক্রিপ্ট যোগ করুন

যেহেতু Firebase Hosting HTTP/2 এর মাধ্যমে পরিবেশিত হয়, তাই একই অরিজিন থেকে ফাইল লোড করে আপনি কর্মক্ষমতা বৃদ্ধি করতে পারেন। Firebase Hosting Firebase JavaScript SDK এর ৮ম সংস্করণ পরিবেশন করে, বিশেষ URL থেকে যা এইভাবে ফর্ম্যাট করা হয়েছে:

/__/firebase/JS_SDK_VERSION/FIREBASE_SDK_NAME.js

আমরা দৃঢ়ভাবে সুপারিশ করছি যে আপনি আপনার অ্যাপে শুধুমাত্র সেই লাইব্রেরিগুলি লোড করুন। উদাহরণস্বরূপ, শুধুমাত্র Authentication এবং 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>

SDK অটো-কনফিগারেশন

স্বয়ংক্রিয় SDK কনফিগারেশনের মাধ্যমে একটি কোডবেস থেকে একাধিক পরিবেশ (যেমন ডেভ, স্টেজিং এবং প্রোডাকশন) পরিচালনা করা সহজ হয়। সংরক্ষিত Hosting URL এর উপর নির্ভর করে, আপনি একই কোড একাধিক Firebase প্রকল্পে স্থাপন করতে পারেন।

SDK গুলি হোস্ট করার পাশাপাশি, সংরক্ষিত নেমস্পেস Hosting সাইটের সাথে সম্পর্কিত Firebase প্রকল্পের জন্য SDK শুরু করার জন্য প্রয়োজনীয় সমস্ত কনফিগারেশনও সরবরাহ করে। এই Firebase কনফিগারেশন এবং SDK শুরু একটি স্ক্রিপ্ট দ্বারা সরবরাহ করা হয় যা আপনি সরাসরি অন্তর্ভুক্ত করতে পারেন:

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

যখন আপনি Firebase-এ ডিপ্লয় করেন বা আপনার অ্যাপটি স্থানীয়ভাবে পরীক্ষা করেন, তখন এই স্ক্রিপ্টটি স্বয়ংক্রিয়ভাবে সক্রিয় Firebase প্রকল্পের জন্য Firebase JavaScript SDK কনফিগার করে এবং SDK চালু করে।

আপনি যদি নিজেই ইনিশিয়ালাইজেশন নিয়ন্ত্রণ করতে চান, তাহলে Firebase কনফিগারেশন মানগুলি JSON আকারেও উপলব্ধ:

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

উপলব্ধ Firebase JS SDK গুলি (সংরক্ষিত Hosting URL থেকে)

ফায়ারবেস পণ্য লাইব্রেরি রেফারেন্স (সংরক্ষিত URL)
ফায়ারবেস কোর
(প্রয়োজনীয়)
<script src="/__/firebase/8.10.1/firebase-app.js"></script>
Analytics
<script src="/__/firebase/8.10.1/firebase-analytics.js"></script>
App Check
<script src="/__/firebase/8.10.1/firebase-app-check.js"></script>
Authentication
<script src="/__/firebase/8.10.1/firebase-auth.js"></script>
Cloud Firestore
<script src="/__/firebase/8.10.1/firebase-firestore.js"></script>
Cloud Functions for Firebase Client SDK
<script src="/__/firebase/8.10.1/firebase-functions.js"></script>
Firebase ইনস্টলেশন
<script src="/__/firebase/8.10.1/firebase-installations.js"></script>
Cloud Messaging
<script src="/__/firebase/8.10.1/firebase-messaging.js"></script>

Cloud Messaging ব্যবহারের সর্বোত্তম অভিজ্ঞতার জন্য, Analytics জন্য ফায়ারবেস SDKও যোগ করুন।

Cloud Storage
<script src="/__/firebase/8.10.1/firebase-storage.js"></script>
Performance Monitoring
( বিটা রিলিজ)
<script src="/__/firebase/8.10.1/firebase-performance.js"></script>
Realtime Database
<script src="/__/firebase/8.10.1/firebase-database.js"></script>
Remote Config
( বিটা রিলিজ)
<script src="/__/firebase/8.10.1/firebase-remote-config.js"></script>

Remote Config ব্যবহারের সর্বোত্তম অভিজ্ঞতার জন্য, Analytics জন্য ফায়ারবেস SDKও যোগ করুন।

Firebase JavaScript এসডিকে
(পুরো SDK)
<script src="/__/firebase/8.10.1/firebase.js"></script>

প্রমাণীকরণ সহায়ক

Firebase Authentication OAuth এর মাধ্যমে প্রোভাইডারদের সাথে প্রমাণীকরণ সম্পূর্ণ করার জন্য বিশেষ JavaScript এবং HTML প্রদানের জন্য সংরক্ষিত নেমস্পেস ব্যবহার করে। এটি প্রতিটি Firebase প্রকল্পের একটি অনন্য Firebase সাবডোমেন রাখার অনুমতি দেয়, Firebase Authentication এর নিরাপত্তা বৃদ্ধি করে।

এছাড়াও, এটি আপনাকে firebase.initializeApp() এর authDomain বিকল্পের জন্য আপনার নিজস্ব কাস্টম ডোমেন ব্যবহার করার অনুমতি দেয়। যদি আপনি Firebase Hosting এর জন্য একটি কাস্টম ডোমেন কনফিগার করেন , তাহলে Firebase SDK গুলি শুরু করার সময় আপনি সেই কাস্টম ডোমেনটি (আপনার web.app বা firebaseapp.com সাবডোমেনের পরিবর্তে) নির্দিষ্ট করতে পারেন। কাস্টম ডোমেন ব্যবহার সম্পর্কে আরও বিস্তারিত জানার জন্য signInWithRedirect ব্যবহারের সেরা অনুশীলনগুলি দেখুন।

সংরক্ষিত URL এবং পরিষেবা কর্মীরা

যদি আপনি একটি প্রোগ্রেসিভ ওয়েব অ্যাপ (PWA) তৈরি করেন, তাহলে আপনি এমন একটি পরিষেবা কর্মী তৈরি করতে পারেন যার একটি "নেভিগেশন ফলব্যাক" আছে এবং যদি এটি পূর্ব-ক্যাশ করা আইটেমের তালিকার সাথে মেলে না, তাহলে ডিফল্টরূপে একটি নির্দিষ্ট URL রেন্ডার করে।

যদি আপনি sw-precache লাইব্রেরি ব্যবহার করেন, তাহলে আপনি একটি নেভিগেশন ফলব্যাক হোয়াইটলিস্ট সেটিং যোগ করতে পারেন যা সংরক্ষিত নেমস্পেস বাদ দেয়:

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

সাধারণভাবে, মনে রাখবেন যে ডাবল-আন্ডারস্কোর নেমস্পেসটি ফায়ারবেস ব্যবহারের জন্য সংরক্ষিত এবং আপনার পরিষেবা কর্মীতে এই অনুরোধগুলি আটকানো উচিত নয়।