SDK های Firebase را از URL های رزرو شده بارگیری کنید

میزبانی Firebase URL ها را در سایت شما ذخیره می کند که با /__ شروع می شود. این فضای نام رزرو شده استفاده از سایر محصولات Firebase را همراه با میزبانی Firebase آسانتر می کند.

این نشانی‌های اینترنتی رزرو شده هم در هنگام استقرار در Firebase ( firebase deploy ) و هم زمانی که برنامه خود را روی یک سرور محلی اجرا می‌کنید ( firebase serve ) در دسترس هستند.

اسکریپت هایی را برای URL های رزرو شده اضافه کنید

از آنجا که میزبانی Firebase هنگام استقرار از طریق HTTP/2 ارائه می‌شود، می‌توانید با بارگیری فایل‌هایی از همان مبدا، عملکرد را افزایش دهید. میزبانی Firebase نسخه 8 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 مدیریت چندین محیط (مانند توسعه، مرحله‌بندی و تولید) را از یک پایگاه کد آسان می‌کند. با تکیه بر URL رزرو شده میزبانی، می توانید همان کد را در چندین پروژه Firebase مستقر کنید.

علاوه بر میزبانی خود SDK ها، فضای نام رزرو شده همچنین تمام تنظیمات لازم برای مقداردهی اولیه SDK برای پروژه Firebase مرتبط با سایت میزبان را فراهم می کند. این پیکربندی Firebase و مقداردهی اولیه SDK توسط یک اسکریپت ارائه می شود که می توانید مستقیماً آن را وارد کنید:

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

هنگامی که در Firebase مستقر می شوید یا برنامه خود را به صورت محلی آزمایش می کنید، این اسکریپت به طور خودکار Firebase JavaScript SDK را برای پروژه Firebase فعال پیکربندی می کند و SDK را مقداردهی اولیه می کند.

اگر ترجیح می دهید خودتان مقداردهی اولیه را کنترل کنید، مقادیر پیکربندی Firebase به شکل JSON نیز موجود است:

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

Firebase JS SDK های موجود (از URL های میزبان رزرو شده)

محصول Firebase مرجع کتابخانه (نشانی اینترنتی رزرو شده)
هسته Firebase
(ضروری)
<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>
Cloud Firestore
<script src="/__/firebase/8.10.1/firebase-firestore.js"></script>
توابع ابری برای Firebase Client SDK
<script src="/__/firebase/8.10.1/firebase-functions.js"></script>
تاسیسات فایربیس
<script src="/__/firebase/8.10.1/firebase-installations.js"></script>
پیام رسانی ابری
<script src="/__/firebase/8.10.1/firebase-messaging.js"></script>

برای تجربه بهینه با استفاده از Cloud Messaging، Firebase SDK for Analytics را نیز اضافه کنید.

فضای ذخیره ابری
<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، Firebase SDK for Analytics را نیز اضافه کنید.

Firebase JavaScript SDK
(کل SDK)
<script src="/__/firebase/8.10.1/firebase.js"></script>

یاران احراز هویت

Firebase Authentication از فضای نام رزرو شده برای ارائه جاوا اسکریپت و HTML ویژه برای تکمیل احراز هویت با ارائه دهندگان از طریق OAuth استفاده می کند. این به هر پروژه Firebase اجازه می دهد تا یک زیر دامنه Firebase منحصر به فرد داشته باشد و امنیت Firebase Authentication را افزایش دهد.

علاوه بر این، این به شما امکان می دهد از دامنه سفارشی خود برای گزینه authDomain firebase.initializeApp() استفاده کنید. اگر یک دامنه سفارشی را برای میزبانی Firebase پیکربندی می‌کنید ، می‌توانید آن دامنه سفارشی (به‌جای زیر دامنه web.app یا firebaseapp.com خود) را هنگام تنظیم اولیه SDK‌های Firebase نیز مشخص کنید.

نشانی‌های وب رزرو شده و کارکنان خدمات

اگر در حال ساختن یک برنامه وب پیشرو (PWA) هستید، ممکن است یک سرویس دهنده ایجاد کنید که دارای "بازگشت ناوبری" باشد و اگر URL خاصی با لیست موارد از پیش ذخیره شده مطابقت نداشته باشد به طور پیش فرض ارائه می کند.

اگر از کتابخانه sw-precache استفاده می‌کنید، می‌توانید یک تنظیم فهرست سفید بازگشتی پیمایش که فضای نام رزرو شده را حذف می‌کند، اضافه کنید:

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

به طور کلی، فقط به یاد داشته باشید که فضای نام دو خط زیر برای استفاده از Firebase رزرو شده است و شما نباید این درخواست‌ها را در سرویس‌کار خود رهگیری کنید.