স্থানীয় এমুলেটর স্যুট ইনস্টল, কনফিগার এবং সংহত করুন

ফায়ারবেস লোকাল এমুলেটর স্যুটটি বিভিন্ন প্রোটোটাইপ এবং পরীক্ষার পরিবেশের জন্য ইনস্টল এবং কনফিগার করা যেতে পারে, এককালীন প্রোটোটাইপিং সেশন থেকে শুরু করে উৎপাদন-স্কেল ক্রমাগত ইন্টিগ্রেশন ওয়ার্কফ্লো পর্যন্ত যেকোনো কিছু।

স্থানীয় এমুলেটর স্যুট ইনস্টল করুন

এমুলেটর স্যুট ইনস্টল করার আগে আপনার প্রয়োজন হবে:

  • Node.js সংস্করণ ১৬.০ বা তার বেশি।
  • জাভা JDK সংস্করণ ১১ বা তার বেশি।

এমুলেটর স্যুট ইনস্টল করতে:

  1. Firebase CLI ইনস্টল করুন। যদি আপনার কাছে ইতিমধ্যে Firebase CLI ইনস্টল না থাকে, তাহলে এখনই এটি ইনস্টল করুন । এমুলেটর স্যুট ব্যবহার করার জন্য আপনার CLI সংস্করণ 8.14.0 বা তার বেশি প্রয়োজন হবে। আপনি নিম্নলিখিত কমান্ড ব্যবহার করে কোন সংস্করণটি ইনস্টল করেছেন তা পরীক্ষা করতে পারেন:
    firebase --version
  2. যদি আপনি ইতিমধ্যেই এটি না করে থাকেন, তাহলে বর্তমান ওয়ার্কিং ডিরেক্টরিটিকে একটি Firebase প্রকল্প হিসাবে শুরু করুন, অনস্ক্রিন প্রম্পট অনুসরণ করে কোন পণ্যগুলি ব্যবহার করবেন তা নির্দিষ্ট করুন:
    firebase init
  3. এমুলেটর স্যুট সেট আপ করুন। এই কমান্ডটি একটি কনফিগারেশন উইজার্ড শুরু করে যা আপনাকে আগ্রহের এমুলেটর নির্বাচন করতে, সংশ্লিষ্ট এমুলেটর বাইনারি ফাইল ডাউনলোড করতে এবং ডিফল্ট মান উপযুক্ত না হলে এমুলেটর পোর্ট সেট করতে দেয়।
    firebase init emulators

একবার একটি এমুলেটর ইনস্টল হয়ে গেলে, আপনার Firebase CLI সংস্করণ আপডেট না করা পর্যন্ত কোনও আপডেট পরীক্ষা করা হবে না এবং কোনও অতিরিক্ত স্বয়ংক্রিয় ডাউনলোড হবে না।

এমুলেটর স্যুট কনফিগার করুন

আপনি ঐচ্ছিকভাবে firebase.json ফাইলে এমুলেটরের নেটওয়ার্ক পোর্ট এবং নিরাপত্তা নিয়ম সংজ্ঞার পথ কনফিগার করতে পারেন:

  • firebase init emulators চালিয়ে অথবা firebase.json ম্যানুয়ালি সম্পাদনা করে এমুলেটর পোর্ট পরিবর্তন করুন।
  • firebase.json ম্যানুয়ালি সম্পাদনা করে নিরাপত্তা নিয়মের সংজ্ঞার পথ পরিবর্তন করুন।

যদি আপনি এই সেটিংস কনফিগার না করেন, তাহলে এমুলেটরগুলি তাদের ডিফল্ট পোর্টগুলিতে শুনবে এবং Cloud Firestore , Realtime Database এবং Cloud Storage for Firebase ওপেন ডেটা সুরক্ষার সাথে চলবে।

কমান্ড বিবরণ
init এমুলেটর একটি এমুলেটর ইনিশিয়ালাইজেশন উইজার্ড শুরু করুন। ইনস্টল করার জন্য এমুলেটরগুলি সনাক্ত করুন এবং ঐচ্ছিকভাবে এমুলেটর পোর্ট সেটিংস নির্দিষ্ট করুন। init emulators ধ্বংসাত্মক নয়; ডিফল্ট গ্রহণ করলে বর্তমান এমুলেটর কনফিগারেশন সংরক্ষণ করা হবে।

পোর্ট কনফিগারেশন

প্রতিটি এমুলেটর আপনার মেশিনের একটি ভিন্ন পোর্টের সাথে একটি পছন্দসই ডিফল্ট মান সহ আবদ্ধ হয়।

এমুলেটর ডিফল্ট পোর্ট
Authentication 9099 সম্পর্কে
App Hosting ৫০০২
Emulator Suite UI ৪০০০
Cloud Functions ৫০০১
ইভেন্টার্ক ৯২৯৯
Realtime Database ৯০০০
Cloud Firestore ৮০৮০
Cloud Storage for Firebase ৯১৯৯
Firebase Hosting ৫০০০
Pub/Sub ৮০৮৫

প্রকল্প আইডি কনফিগারেশন

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

সকল এমুলেটর ইনভোকেশনের জন্য একটি প্রজেক্ট আইডি সেট করা সাধারণত একটি ভালো অভ্যাস, যাতে Emulator Suite UI , বিভিন্ন পণ্য এমুলেটর এবং একটি নির্দিষ্ট এমুলেটরের সমস্ত চলমান ইনস্ট্যান্স সকল ক্ষেত্রে সঠিকভাবে যোগাযোগ করতে পারে।

Local Emulator Suite পরিবেশে একাধিক প্রকল্প আইডি সনাক্ত করলে সতর্কতা জারি করে, যদিও আপনি আপনার firebase.jsonsingleProjectMode কীটিকে false এ সেট করে এই আচরণটি ওভাররাইড করতে পারেন।

আপনি প্রকল্প আইডি ঘোষণা(গুলি) এর অমিল পরীক্ষা করতে পারেন:

  • কমান্ড লাইনে ডিফল্ট প্রজেক্ট। ডিফল্টরূপে, প্রজেক্ট আইডিটি স্টার্টআপের সময় firebase init অথবা firebase use দিয়ে নির্বাচিত প্রজেক্ট থেকে নেওয়া হবে। প্রজেক্টের তালিকা দেখতে (এবং কোনটি নির্বাচিত হয়েছে তা দেখতে) firebase projects:list ব্যবহার করুন।
  • রুলস ইউনিট টেস্ট। প্রজেক্ট আইডি প্রায়শই রুলস ইউনিট টেস্টিং লাইব্রেরি মেথড initializeTestEnvironment অথবা initializeTestApp কলের সময় নির্দিষ্ট করা হয়।
  • কমান্ড লাইন --project ফ্ল্যাগ। Firebase CLI --project ফ্ল্যাগ পাস করলে ডিফল্ট প্রজেক্ট ওভাররাইড হয়ে যায়। ইউনিট পরীক্ষা এবং অ্যাপ ইনিশিয়ালাইজেশনে আপনাকে নিশ্চিত করতে হবে যে ফ্ল্যাগের মানটি প্রজেক্ট আইডির সাথে মেলে।

আপনার অ্যাপল প্ল্যাটফর্ম , অ্যান্ড্রয়েড এবং ওয়েব প্রকল্পগুলি কনফিগার করার সময় আপনার সেট করা প্ল্যাটফর্ম-নির্দিষ্ট প্রকল্প আইডি কনফিগারেশনগুলিও পরীক্ষা করে দেখুন।

নিরাপত্তা নিয়ম কনফিগারেশন

এমুলেটরগুলি firebase.json এর database , firestore এবং storage কনফিগারেশন কী থেকে নিরাপত্তা নিয়ম কনফিগারেশন নেবে।

{
  // Existing firebase configuration ...
  "database": {
    "rules": "database.rules.json"
  },
  "firestore": {
    "rules": "firestore.rules"
  },
  "storage": {
    "rules": "storage.rules"
  }

  // ...

  // Optional emulator configuration. Default
  // values are used if absent.
  "emulators": {
    "singleProjectMode": false, // do not warn on detection of multiple project IDs
    "firestore": {
      "port": "8080"
    },
    "ui": {
      "enabled": true,      // Default is `true`
      "port": 4000          // If unspecified, see CLI log for selected port
    },
    "auth": {
      "port": "9099"
    },
    "pubsub": {
      "port": "8085"
    }
  }
}

জাভা বিকল্পগুলি নির্দিষ্ট করা

Realtime Database এমুলেটর, Cloud Firestore এমুলেটর এবং Cloud Storage for Firebase কিছু অংশ জাভা ভিত্তিক, যা পরিবেশ পরিবর্তনশীল JAVA_TOOL_OPTIONS মাধ্যমে JVM ফ্ল্যাগের সাথে কাস্টমাইজ করা যেতে পারে।

উদাহরণস্বরূপ, যদি আপনি জাভা হিপ স্পেস সম্পর্কিত ত্রুটির সম্মুখীন হন, তাহলে আপনি সর্বোচ্চ জাভা হিপ আকার 4GB পর্যন্ত বাড়িয়ে দিতে পারেন:

export JAVA_TOOL_OPTIONS="-Xmx4g"
firebase emulators:start

একাধিক পতাকা স্পেস দ্বারা পৃথক করে উদ্ধৃতিতে নির্দিষ্ট করা যেতে পারে, যেমন JAVA_TOOL_OPTIONS="-Xms2g -Xmx4g" । পতাকাগুলি কেবল এমুলেটরগুলির জাভা-ভিত্তিক উপাদানগুলিকে প্রভাবিত করে এবং Firebase CLI-এর অন্যান্য অংশগুলিতে কোনও প্রভাব ফেলে না, যেমন Emulator Suite UI

এমুলেটর শুরু করুন

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

কমান্ড বিবরণ
এমুলেটর: শুরু করুন firebase.json এ কনফিগার করা Firebase পণ্যগুলির জন্য এমুলেটর শুরু করুন। এমুলেটর প্রক্রিয়াগুলি স্পষ্টভাবে বন্ধ না হওয়া পর্যন্ত চলতে থাকবে। emulators:start কল করলে এমুলেটরগুলি ~/.cache/firebase/emulators/ এ ডাউনলোড হবে যদি সেগুলি ইতিমধ্যে ইনস্টল না থাকে।
পতাকা বিবরণ
--only ঐচ্ছিক। কোন এমুলেটরগুলি শুরু হবে তা সীমাবদ্ধ করুন। 'auth', 'database', 'firestore', 'functions', 'hosting', অথবা 'pubsub' এর মধ্যে এক বা একাধিক উল্লেখ করে এমুলেটর নামের একটি কমা দ্বারা পৃথক তালিকা সরবরাহ করুন।
--inspect-functions debug_port ঐচ্ছিক। নির্দিষ্ট পোর্টে ফাংশনের ব্রেকপয়েন্ট ডিবাগিং সক্ষম করতে Cloud Functions এমুলেটর ব্যবহার করুন (অথবা আর্গুমেন্ট বাদ দিলে ডিফল্ট পোর্ট 9229)। মনে রাখবেন যে যখন এই ফ্ল্যাগটি সরবরাহ করা হয়, তখন Cloud Functions এমুলেটর একটি বিশেষ সিরিয়ালাইজড এক্সিকিউশন মোডে স্যুইচ করে যেখানে ফাংশনগুলি একটি একক প্রক্রিয়ায়, ক্রমিক (FIFO) ক্রমে কার্যকর করা হয়; এটি ফাংশন ডিবাগিংকে সহজ করে তোলে, যদিও আচরণটি ক্লাউডে ফাংশনগুলির বহু-প্রক্রিয়া, সমান্তরাল এক্সিকিউশন থেকে আলাদা।
--export-on-exit= ঐচ্ছিক। Firebase এমুলেটরের জন্য Authentication , Cloud Firestore , Realtime Database অথবা Cloud Storage for Firebase ব্যবহার করুন। emulators:export কমান্ডের বর্ণনা অনুযায়ী, শাটডাউন হলে এমুলেটর(গুলি) কে একটি ডিরেক্টরিতে ডেটা রপ্তানি করার নির্দেশ দিন। export ডিরেক্টরিটি এই ফ্ল্যাগ দিয়ে নির্দিষ্ট করা যেতে পারে: firebase emulators:start --export-on-exit=./saved-data । যদি --import ব্যবহার করা হয়, তাহলে export পাথটি ডিফল্টভাবে একই থাকবে; উদাহরণস্বরূপ: firebase emulators:start --import=./data-path --export-on-exit । অবশেষে, যদি ইচ্ছা হয়, তাহলে --import এবং --export-on-exit ফ্ল্যাগে বিভিন্ন ডিরেক্টরি পাথ পাস করুন।
--import= import_directory ঐচ্ছিক। Cloud Storage for Firebase Authentication , Cloud Firestore , Realtime Database অথবা Cloud Storage ব্যবহার করুন। --export-on-exit startup বিকল্প ব্যবহার করে অথবা emulators:export কমান্ড ব্যবহার করে সংরক্ষিত ডেটা Firebase এমুলেটর ইনস্ট্যান্সের জন্য একটি চলমান Authentication , Cloud Firestore , Realtime Database অথবা Cloud Storage for Firebase এ আমদানি করুন। বর্তমানে এমুলেটর মেমরিতে থাকা যেকোনো ডেটা ওভারউইটেন করা হবে।
--log-verbosity= verbosity ঐচ্ছিক। কনসোল এবং লগ ফাইলগুলিতে শব্দ কমাতে এমুলেটরগুলি থেকে লগিং আউটপুটের পরিমাণ হ্রাস করে। বৈধ মানগুলি হল DEBUG, INFO, QUIET, SILENT।
এমুলেটর: এক্সেক scriptpath firebase.json এ কনফিগার করা Firebase পণ্যগুলির জন্য এমুলেটর শুরু করার পরে scriptpath এ স্ক্রিপ্টটি চালান। স্ক্রিপ্টটি চালানো শেষ হলে এমুলেটর প্রক্রিয়াগুলি স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যাবে।
পতাকা বিবরণ
--only ঐচ্ছিক। কোন এমুলেটরগুলি শুরু হবে তা সীমাবদ্ধ করুন। 'ফায়ারস্টোর', 'ডাটাবেস', 'ফাংশন', 'হোস্টিং', অথবা 'পাবসাব' এর মধ্যে এক বা একাধিক উল্লেখ করে এমুলেটর নামের একটি কমা দ্বারা পৃথক তালিকা সরবরাহ করুন।
--inspect-functions debug_port ঐচ্ছিক। নির্দিষ্ট পোর্টে ফাংশনের ব্রেকপয়েন্ট ডিবাগিং সক্ষম করতে Cloud Functions এমুলেটর ব্যবহার করুন (অথবা আর্গুমেন্ট বাদ দিলে ডিফল্ট পোর্ট 9229)। মনে রাখবেন যে যখন এই ফ্ল্যাগটি সরবরাহ করা হয়, তখন Cloud Functions এমুলেটর একটি বিশেষ সিরিয়ালাইজড এক্সিকিউশন মোডে স্যুইচ করে যেখানে ফাংশনগুলি একটি একক প্রক্রিয়ায়, ক্রমিক (FIFO) ক্রমে কার্যকর করা হয়; এটি ফাংশন ডিবাগিংকে সহজ করে তোলে, যদিও আচরণটি ক্লাউডে ফাংশনগুলির বহু-প্রক্রিয়া, সমান্তরাল এক্সিকিউশন থেকে আলাদা।
--export-on-exit= ঐচ্ছিক। Firebase এমুলেটরের জন্য Authentication , Cloud Firestore , Realtime Database অথবা Cloud Storage for Firebase ব্যবহার করুন। emulators:export কমান্ডের বর্ণনা অনুযায়ী, শাটডাউন হলে এমুলেটর(গুলি) কে একটি ডিরেক্টরিতে ডেটা রপ্তানি করার নির্দেশ দিন। export ডিরেক্টরিটি এই ফ্ল্যাগ দিয়ে নির্দিষ্ট করা যেতে পারে: firebase emulators:start --export-on-exit=./saved-data । যদি --import ব্যবহার করা হয়, তাহলে export পাথটি ডিফল্টভাবে একই থাকবে; উদাহরণস্বরূপ: firebase emulators:start --import=./data-path --export-on-exit । অবশেষে, যদি ইচ্ছা হয়, তাহলে --import এবং --export-on-exit ফ্ল্যাগে বিভিন্ন ডিরেক্টরি পাথ পাস করুন।
--import= import_directory ঐচ্ছিক। Cloud Storage for Firebase Authentication , Cloud Firestore , Realtime Database অথবা Cloud Storage ব্যবহার করুন। --export-on-exit startup বিকল্প ব্যবহার করে অথবা emulators:export কমান্ড ব্যবহার করে সংরক্ষিত ডেটা Firebase এমুলেটর ইনস্ট্যান্সের জন্য একটি চলমান Authentication , Cloud Firestore , Realtime Database অথবা Cloud Storage for Firebase এ আমদানি করুন। বর্তমানে এমুলেটর মেমরিতে থাকা যেকোনো ডেটা ওভাররাইট করা হবে।
--ui ঐচ্ছিক। কার্যকর করার সময় এমুলেটর UI চালান।
--log-verbosity= verbosity ঐচ্ছিক। কনসোল এবং লগ ফাইলগুলিতে শব্দ কমাতে এমুলেটরগুলি থেকে লগিং আউটপুটের পরিমাণ হ্রাস করে। বৈধ মানগুলি হল DEBUG, INFO, QUIET, SILENT।

firebase emulators:exec পদ্ধতিটি সাধারণত ক্রমাগত ইন্টিগ্রেশন ওয়ার্কফ্লোর জন্য বেশি উপযুক্ত।

এমুলেটর ডেটা রপ্তানি এবং আমদানি করুন

আপনি Firebase এমুলেটরগুলির জন্য Authentication , Cloud Firestore , Realtime Database এবং Cloud Storage for Firebase থেকে ডেটা রপ্তানি করতে পারেন যাতে এটি একটি শেয়ারযোগ্য, সাধারণ বেসলাইন ডেটা সেট হিসেবে ব্যবহার করা যায়। এই ডেটা সেটগুলি উপরে বর্ণিত --import পতাকা ব্যবহার করে আমদানি করা যেতে পারে।

এমুলেটর: এক্সপোর্ট export_directory

Cloud Storage for Firebase Authentication , Cloud Firestore , Realtime Database অথবা ক্লাউড স্টোরেজ । একটি চলমান Cloud Firestore , Realtime Database অথবা Cloud Storage for Firebase । নির্দিষ্ট export_directory তৈরি করা হবে যদি এটি ইতিমধ্যে বিদ্যমান না থাকে। যদি নির্দিষ্ট ডিরেক্টরিটি বিদ্যমান থাকে, তাহলে আপনাকে নিশ্চিত করতে বলা হবে যে পূর্ববর্তী এক্সপোর্ট ডেটা ওভাররাইট করা উচিত। আপনি --force পতাকা ব্যবহার করে এই প্রম্পটটি এড়িয়ে যেতে পারেন। এক্সপোর্ট ডিরেক্টরিতে একটি ডেটা ম্যানিফেস্ট ফাইল রয়েছে, firebase-export-metadata.json

উপরে বর্ণিত --export-on-exit ফ্ল্যাগ ব্যবহার করে আপনি এমুলেটরগুলিকে বন্ধ হয়ে গেলে স্বয়ংক্রিয়ভাবে ডেটা রপ্তানি করার নির্দেশ দিতে পারেন।

আপনার CI সিস্টেমের সাথে একীভূত করুন

কন্টেইনারাইজড এমুলেটর স্যুট ছবি চালানো হচ্ছে

একটি সাধারণ CI সেটআপে কন্টেইনার সহ এমুলেটর স্যুট ইনস্টলেশন এবং কনফিগারেশন করা সহজ।

কয়েকটি বিষয় লক্ষ্য করার মতো:

  • JAR ফাইলগুলি ~/.cache/firebase/emulators/ এ ইনস্টল এবং ক্যাশে করা হয়।

    • বারবার ডাউনলোড এড়াতে আপনি আপনার CI ক্যাশে কনফিগারেশনে এই পথটি যোগ করতে চাইতে পারেন।
  • যদি আপনার রিপোজিটরিতে firebase.json ফাইল না থাকে, তাহলে কোন এমুলেটরগুলি শুরু করা উচিত তা নির্দিষ্ট করার জন্য আপনাকে emulators:start অথবা emulators:exec কমান্ডে একটি কমান্ড লাইন আর্গুমেন্ট যোগ করতে হবে। উদাহরণস্বরূপ,
    --only functions,firestore

একটি প্রমাণীকরণ টোকেন তৈরি করুন (শুধুমাত্র হোস্টিং এমুলেটর)

যদি আপনার ক্রমাগত ইন্টিগ্রেশন ওয়ার্কফ্লো Firebase Hosting উপর নির্ভর করে, তাহলে firebase emulators:exec চালানোর জন্য আপনাকে একটি টোকেন ব্যবহার করে লগ ইন করতে হবে। অন্যান্য এমুলেটরগুলির লগইনের প্রয়োজন হয় না।

একটি টোকেন তৈরি করতে, আপনার স্থানীয় পরিবেশে firebase login:ci চালান; এটি কোনও CI সিস্টেম থেকে করা উচিত নয়। প্রমাণীকরণের জন্য নির্দেশাবলী অনুসরণ করুন। আপনাকে প্রতিটি প্রকল্পের জন্য কেবল একবার এই পদক্ষেপটি সম্পাদন করতে হবে, যেহেতু টোকেনটি সমস্ত বিল্ড জুড়ে বৈধ হবে। টোকেনটিকে একটি পাসওয়ার্ডের মতো বিবেচনা করা উচিত; নিশ্চিত করুন যে এটি গোপন রাখা হয়েছে।

যদি আপনার CI পরিবেশ আপনাকে বিল্ড স্ক্রিপ্টে ব্যবহারযোগ্য পরিবেশ ভেরিয়েবল নির্দিষ্ট করার অনুমতি দেয়, তাহলে কেবল FIREBASE_TOKEN নামক একটি পরিবেশ ভেরিয়েবল তৈরি করুন, যার মান হবে অ্যাক্সেস টোকেন স্ট্রিং। Firebase CLI স্বয়ংক্রিয়ভাবে FIREBASE_TOKEN পরিবেশ ভেরিয়েবলটি তুলে নেবে এবং এমুলেটরগুলি সঠিকভাবে শুরু হবে।

শেষ অবলম্বন হিসেবে, আপনি কেবল আপনার বিল্ড স্ক্রিপ্টে টোকেনটি অন্তর্ভুক্ত করতে পারেন, তবে নিশ্চিত করুন যে অবিশ্বস্ত পক্ষগুলির অ্যাক্সেস নেই। এই হার্ড-কোডেড পদ্ধতির জন্য, আপনি firebase emulators:exec কমান্ডে --token "YOUR_TOKEN_STRING_HERE" যোগ করতে পারেন।

এমুলেটর হাব REST API ব্যবহার করুন

চলমান এমুলেটরগুলির তালিকা তৈরি করুন

বর্তমানে চলমান এমুলেটরগুলির তালিকা তৈরি করতে, এমুলেটর হাবের /emulators এন্ডপয়েন্টে একটি GET অনুরোধ পাঠান।

curl localhost:4400/emulators

ফলাফলটি একটি JSON অবজেক্ট হবে যেখানে সমস্ত চলমান এমুলেটর এবং তাদের হোস্ট/পোর্ট কনফিগারেশন তালিকাভুক্ত থাকবে, উদাহরণস্বরূপ:

{
  "hub":{
    "name": "hub",
    "host": "localhost",
    "port": 4400
  },
  "functions": {
    "name": "functions",
    "host": "localhost",
    "port": 5001
  }
  "firestore": {
    "name": "firestore",
    "host": "localhost",
    "port": 8080
  }
}

ব্যাকগ্রাউন্ড ফাংশন ট্রিগারগুলি সক্ষম / অক্ষম করুন

কিছু পরিস্থিতিতে আপনাকে স্থানীয় ফাংশন এবং এক্সটেনশন ট্রিগারগুলিকে সাময়িকভাবে অক্ষম করতে হবে। উদাহরণস্বরূপ, আপনি Cloud Firestore এমুলেটরের সমস্ত ডেটা মুছে ফেলতে চাইতে পারেন, Cloud Functions বা Extensions এমুলেটরগুলিতে চলমান কোনও onDelete ফাংশন ট্রিগার না করেই।

স্থানীয় ফাংশন ট্রিগারগুলি অস্থায়ীভাবে অক্ষম করতে, এমুলেটর হাবের /functions/disableBackgroundTriggers এন্ডপয়েন্টে একটি PUT অনুরোধ পাঠান।

curl -X PUT localhost:4400/functions/disableBackgroundTriggers

ফলাফলটি একটি JSON অবজেক্ট হবে যা বর্তমান অবস্থা সম্পর্কে বিস্তারিতভাবে বর্ণনা করবে।

{
  "enabled": false
}

স্থানীয় ফাংশন ট্রিগারগুলি নিষ্ক্রিয় করার পরে সক্ষম করতে, এমুলেটর হাবের /functions/enableBackgroundTriggers এন্ডপয়েন্টে একটি PUT অনুরোধ পাঠান।

curl -X PUT localhost:4400/functions/enableBackgroundTriggers

ফলাফলটি একটি JSON অবজেক্ট হবে যা বর্তমান অবস্থা সম্পর্কে বিস্তারিতভাবে বর্ণনা করবে।

{
  "enabled": true
}

এমুলেটর SDK ইন্টিগ্রেশন

এই বিভাগের টেবিলগুলি নির্দেশ করে যে কোন এমুলেটরগুলি ক্লায়েন্ট এবং অ্যাডমিন SDK দ্বারা সমর্থিত। ভবিষ্যতের অর্থ হল এমুলেটর সমর্থন পরিকল্পনা করা হয়েছে কিন্তু এখনও উপলব্ধ নয়।

ক্লায়েন্ট SDK এর প্রাপ্যতা

অ্যান্ড্রয়েড অ্যাপল প্ল্যাটফর্মগুলি ওয়েব ফায়ারবেস UI
অ্যান্ড্রয়েড
ফায়ারবেস UI
আইওএস
ফায়ারবেস UI
ওয়েব
Realtime Database ১৯.৪.০ ৭.২.০ ৮.০.০ ৬.৪.০ ভবিষ্যৎ নিষিদ্ধ
Cloud Firestore ২১.৬.০ ৭.২.০ ৮.০.০ ৬.৪.০ ভবিষ্যৎ নিষিদ্ধ
Authentication ২০.০.০ ৭.০.০ ৮.০.০ ৭.০.০ ভবিষ্যৎ ৪.৭.২
Cloud Storage for Firebase ২০.০.০ ৮.০.০ ৮.৪.০ ৭.০.০ ১১.০.০ নিষিদ্ধ
Cloud Functions ১৯.১.০ ৭.২.০ ৮.০.০ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ
Hosting নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ
Extensions নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ

অ্যাডমিন SDK এর উপলব্ধতা

নোড জাভা পাইথন যাও
Realtime Database ৮.৬.০ ৬.১০.০ ২.১৮.০ ভবিষ্যৎ
Cloud Firestore ৮.০.০ ৬.১০.০ ৩.০.০ ১.০.০
Authentication ৯.৩.০ ৭.২.০ ৫.০.০ ৪.২.০
Cloud Storage for Firebase ৯.৮.০ ভবিষ্যৎ ভবিষ্যৎ ভবিষ্যৎ
Cloud Functions নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ
Hosting নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ
Extensions নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ নিষিদ্ধ