এই কুইকস্টার্ট আপনাকে দেখায় কিভাবে Cloud Firestore সেট আপ করতে হয়, ডেটা যোগ করতে হয়, তারপরে Firebase কনসোলে আপনি যে ডেটা যোগ করেছেন তা দেখুন।
Create a Cloud Firestore database
If you haven't already, create a Firebase project: In the Firebase console , click Add project , then follow the on-screen instructions to create a Firebase project or to add Firebase services to an existing GCP project.
Firebase কনসোলের Cloud Firestore বিভাগে নেভিগেট করুন। আপনাকে একটি বিদ্যমান ফায়ারবেস প্রকল্প নির্বাচন করতে বলা হবে। ডাটাবেস তৈরির কর্মপ্রবাহ অনুসরণ করুন।
আপনার Cloud Firestore Security Rules জন্য একটি শুরু মোড নির্বাচন করুন:
- টেস্ট মোড
মোবাইল এবং ওয়েব ক্লায়েন্ট লাইব্রেরিগুলির সাথে শুরু করার জন্য ভাল, তবে যে কেউ আপনার ডেটা পড়তে এবং ওভাররাইট করতে দেয়৷ পরীক্ষা করার পরে, আপনার ডেটা সুরক্ষিত করুন বিভাগটি পর্যালোচনা করতে ভুলবেন না।
ওয়েব, Apple প্ল্যাটফর্ম বা Android SDK দিয়ে শুরু করতে, পরীক্ষা মোড নির্বাচন করুন।
- লক করা মোড
মোবাইল এবং ওয়েব ক্লায়েন্ট থেকে সমস্ত পড়া এবং লেখা অস্বীকার করে। আপনার প্রমাণীকৃত অ্যাপ্লিকেশন সার্ভারগুলি (সি#, জিও, জাভা, নোড.জেএস, পিএইচপি, পাইথন বা রুবি) এখনও আপনার ডাটাবেস অ্যাক্সেস করতে পারে।
সি#, জিও, জাভা, নোড.জেএস, পিএইচপি, পাইথন বা রুবি সার্ভার ক্লায়েন্ট লাইব্রেরি দিয়ে শুরু করতে, লকড মোড নির্বাচন করুন।
আপনার Cloud Firestore Security Rules প্রাথমিক সেটটি আপনার ডিফল্ট Cloud Firestore ডাটাবেসে প্রযোজ্য। আপনি যদি আপনার প্রকল্পের জন্য একাধিক ডাটাবেস তৈরি করেন, আপনি প্রতিটি ডাটাবেসের জন্য Cloud Firestore Security Rules স্থাপন করতে পারেন।
Select a location for your database.
এই লোকেশন সেটিং হল আপনার প্রোজেক্টের ডিফল্ট Google ক্লাউড প্ল্যাটফর্ম (GCP) রিসোর্স লোকেশন । Note that this location will be used for GCP services in your project that require a location setting, specifically, your default Cloud Storage bucket and your App Engine app (which is required if you use Cloud Scheduler).
যদি আপনি একটি অবস্থান নির্বাচন করতে সক্ষম না হন, তাহলে আপনার প্রকল্পে ইতিমধ্যেই একটি ডিফল্ট GCP সংস্থান অবস্থান রয়েছে৷ এটি হয় প্রকল্প তৈরির সময় বা অন্য পরিষেবা সেট আপ করার সময় সেট করা হয়েছিল যার জন্য একটি অবস্থান সেটিং প্রয়োজন৷
সম্পন্ন ক্লিক করুন.
আপনি যখন Cloud Firestore সক্ষম করেন, তখন এটি ক্লাউড এপিআই ম্যানেজারে এপিআইও সক্ষম করে।
আপনার উন্নয়ন পরিবেশ সেট আপ করুন
আপনার অ্যাপে প্রয়োজনীয় নির্ভরতা এবং ক্লায়েন্ট লাইব্রেরি যোগ করুন।
Web
- আপনার ওয়েব অ্যাপে Firebase যোগ করতে নির্দেশাবলী অনুসরণ করুন।
- Add the Firebase and Cloud Firestore libraries to your app:
The Cloud Firestore SDK is also available as an npm package.<script src="https://www.gstatic.com/firebasejs/10.13.1/firebase-app-compat.js"></script> <script src="https://www.gstatic.com/firebasejs/10.13.1/firebase-firestore-compat.js"></script>
আপনাকে ম্যানুয়ালি Firebase এবং Cloud Firestore উভয়েরই প্রয়োজন হবে।npm install firebase@10.13.1 --save
import firebase from "firebase/compat/app"; // Required for side-effects import "firebase/firestore";
Web
- আপনার ওয়েব অ্যাপে Firebase যোগ করতে নির্দেশাবলী অনুসরণ করুন।
- Cloud Firestore SDK একটি npm প্যাকেজ হিসাবে উপলব্ধ।
আপনাকে Firebase এবং Cloud Firestore উভয়ই আমদানি করতে হবে।npm install firebase@10.13.1 --save
import { initializeApp } from "firebase/app"; import { getFirestore } from "firebase/firestore";
iOS+
আপনার Apple অ্যাপে Firebase যোগ করতে নির্দেশাবলী অনুসরণ করুন।
ফায়ারবেস নির্ভরতা ইনস্টল এবং পরিচালনা করতে সুইফট প্যাকেজ ম্যানেজার ব্যবহার করুন।
- Xcode-এ, আপনার অ্যাপ প্রকল্প খোলার সাথে, ফাইল > সুইফট প্যাকেজ > প্যাকেজ নির্ভরতা যোগ করুন- এ নেভিগেট করুন।
- অনুরোধ করা হলে, Firebase Apple প্ল্যাটফর্ম SDK সংগ্রহস্থল যোগ করুন:
- ফায়ারস্টোর লাইব্রেরি বেছে নিন।
- শেষ হয়ে গেলে, Xcode স্বয়ংক্রিয়ভাবে পটভূমিতে আপনার নির্ভরতাগুলি সমাধান এবং ডাউনলোড করা শুরু করবে।
https://github.com/firebase/firebase-ios-sdk
অ্যান্ড্রয়েড
- আপনার Android অ্যাপে Firebase যোগ করতে নির্দেশাবলী অনুসরণ করুন।
- Using the Firebase Android BoM , declare the dependency for the Cloud Firestore library for Android in your module (app-level) Gradle file (usually
app/build.gradle.kts
orapp/build.gradle
).dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.2.0")) // Declare the dependency for the Cloud Firestore library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-firestore") }
Firebase Android BoM ব্যবহার করে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।
(Alternative) Declare Firebase library dependencies without using the BoM
আপনি যদি Firebase BoM ব্যবহার না করা বেছে নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরি সংস্করণ তার নির্ভরতা লাইনে উল্লেখ করতে হবে।
Note that if you use multiple Firebase libraries in your app, we highly recommend using the BoM to manage library versions, which ensures that all versions are compatible.
dependencies { // Declare the dependency for the Cloud Firestore library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-firestore:25.1.0") }
একটি কোটলিন-নির্দিষ্ট লাইব্রেরি মডিউল খুঁজছেন? Starting with the October 2023 release , both Kotlin and Java developers can depend on the main library module (for details, see the FAQ about this initiative ).
Dart
- আপনি যদি ইতিমধ্যে না করে থাকেন, তাহলে আপনার Flutter অ্যাপে Firebase কনফিগার করুন এবং আরম্ভ করুন ।
- আপনার ফ্লাটার প্রকল্পের মূল থেকে, প্লাগইন ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:
flutter pub add cloud_firestore
- একবার সম্পূর্ণ হয়ে গেলে, আপনার ফ্লাটার অ্যাপ্লিকেশন পুনর্নির্মাণ করুন:
flutter run
- ঐচ্ছিক: পূর্ব-সংকলিত ফ্রেমওয়ার্ক অন্তর্ভুক্ত করে iOS এবং macOS বিল্ড টাইম উন্নত করুন।
Currently, the Firestore SDK for iOS depends on code that can take upwards of 5 minutes to build in Xcode. To reduce build times significantly, you can use a pre-compiled version by adding this line to the
target 'Runner' do
block in your Podfile:target 'Runner' do use_frameworks! use_modular_headers! pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => 'IOS_SDK_VERSION' flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) target 'RunnerTests' do inherit! :search_paths end end
IOS_SDK_VERSION ফায়ারবেস আইওএস এসডিকে
firebase_core
firebase_sdk_version.rb
ফাইলটিতে নির্দিষ্ট করা সংস্করণ দিয়ে প্রতিস্থাপন করুন। If you're not using the latest version offirebase_core
, look for this file in your local Pub package cache (usually~/.pub-cache
).অতিরিক্তভাবে, নিশ্চিত করুন যে আপনি কোকোপডগুলি 1.9.1 বা তার বেশি আপগ্রেড করেছেন:
gem install cocoapods
For more information see the issue on GitHub .
জাভা
- Add the Firebase Admin SDK to your app:
- Gradle ব্যবহার করে:
compile 'com.google.firebase:firebase-admin:1.32.0'
- Maven ব্যবহার করে:
<dependency> <groupId>com.google.firebase</groupId> <artifactId>firebase-admin</artifactId> <version>1.32.0</version> </dependency>
- Gradle ব্যবহার করে:
- আপনার পরিবেশে যথাযথ শংসাপত্র সহ Cloud Firestore শুরু করতে নীচের নির্দেশাবলী অনুসরণ করুন।
পাইথন
- আপনার পাইথন অ্যাপে Firebase অ্যাডমিন SDK যোগ করুন:
pip install --upgrade firebase-admin
- আপনার পরিবেশে যথাযথ শংসাপত্র সহ Cloud Firestore শুরু করতে নীচের নির্দেশাবলী অনুসরণ করুন।
সি++
- আপনার C++ প্রকল্পে Firebase যোগ করতে নির্দেশাবলী অনুসরণ করুন।
- অ্যান্ড্রয়েডের জন্য C++ ইন্টারফেস।
- গ্রেডল নির্ভরতা। আপনার মডিউল (অ্যাপ-লেভেল) গ্রেডল ফাইলে নিম্নলিখিত যোগ করুন (সাধারণত
app/build.gradle
):android.defaultConfig.externalNativeBuild.cmake { arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir" } apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle" firebaseCpp.dependencies { // earlier entries auth firestore }
- বাইনারি নির্ভরতা। একইভাবে, বাইনারি নির্ভরতা পাওয়ার প্রস্তাবিত উপায় হল আপনার
CMakeLists.txt
ফাইলে নিম্নলিখিতগুলি যুক্ত করা:add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL) set(firebase_libs firebase_auth firebase_firestore firebase_app) # Replace the target name below with the actual name of your target, # for example, "native-lib". target_link_libraries(${YOUR_TARGET_NAME_HERE} "${firebase_libs}")
- ডেস্কটপ ইন্টিগ্রেশন সেট আপ করতে, আপনার C++ প্রকল্পে Firebase যোগ করুন দেখুন।
ঐক্য
- আপনার ইউনিটি প্রকল্পে Firebase যোগ করতে নির্দেশাবলী অনুসরণ করুন।
- অ্যান্ড্রয়েড বিল্ডগুলিকে ছোট করতে আপনার প্রোজেক্ট কনফিগার করতে ইউনিটি ইন্টারফেস ব্যবহার করুন।
- প্লেয়ার সেটিংস > Android > প্রকাশনা সেটিংস > Minify- এ বিকল্পটি পাওয়া যাবে।
- ইউনিটির বিভিন্ন সংস্করণে বিকল্পগুলি আলাদা হতে পারে তাই অফিসিয়াল ইউনিটি ডকুমেন্টেশন এবং ফায়ারবেস ইউনিটি বিল্ড ডিবাগ গাইড দেখুন।
- If, after enabling minification, the number of referenced methods still exceeds the limit, another option is to enable
multidex
in:-
mainTemplate.gradle
if Custom Gradle Template under Player Settings is enabled - or, the module-level
build.gradle
file, if you use Android Studio to build the exported project.
-
Error while merging dex archives
এড়াতে আপনাকে অবশ্যই বিল্ডটি ছোট করতে হবে।
Node.js
- Add the Firebase Admin SDK to your app:
npm install firebase-admin --save
- Follow the instructions below to initialize Cloud Firestore with the proper credentials in your environment.
যাও
- আপনার Go অ্যাপে Firebase অ্যাডমিন SDK যোগ করুন:
go get firebase.google.com/go
- আপনার পরিবেশে যথাযথ শংসাপত্র সহ Cloud Firestore শুরু করতে নীচের নির্দেশাবলী অনুসরণ করুন।
পিএইচপি
- The Cloud Firestore server client libraries (Java, Node.js, Python, Go, PHP, C#, and Ruby) use Google Application Default Credentials for authentication.
- To authenticate from your development environment, set the
GOOGLE_APPLICATION_CREDENTIALS
environment variable to point to a JSON service account key file. আপনি API কনসোল শংসাপত্র পৃষ্ঠায় একটি কী ফাইল তৈরি করতে পারেন।export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
- In your production environment, you do not need to authenticate if you run your application on App Engine or Compute Engine, using the same project that you use for Cloud Firestore . Otherwise, set up a service account .
- To authenticate from your development environment, set the
- PHP-এর জন্য gRPC এক্সটেনশন ইনস্টল এবং সক্ষম করুন, যা আপনাকে ক্লায়েন্ট লাইব্রেরি ব্যবহার করতে হবে।
- Add the Cloud Firestore PHP library to your app:
composer require google/cloud-firestore
সি#
- Cloud Firestore সার্ভার ক্লায়েন্ট লাইব্রেরি (Java, Node.js, Python, Go, PHP, C# এবং Ruby) প্রমাণীকরণের জন্য Google অ্যাপ্লিকেশন ডিফল্ট শংসাপত্র ব্যবহার করে।
- আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট থেকে প্রমাণীকরণ করতে,
GOOGLE_APPLICATION_CREDENTIALS
এনভায়রনমেন্ট ভেরিয়েবলকে একটি JSON পরিষেবা অ্যাকাউন্ট কী ফাইলের দিকে নির্দেশ করতে সেট করুন। You can create a key file on the API Console Credentials page .export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
- আপনার উত্পাদন পরিবেশে, আপনি যদি Cloud Firestore জন্য ব্যবহার করেন সেই একই প্রকল্প ব্যবহার করে আপনি অ্যাপ ইঞ্জিন বা কম্পিউট ইঞ্জিনে আপনার অ্যাপ্লিকেশন চালালে আপনাকে প্রমাণীকরণের প্রয়োজন নেই। Otherwise, set up a service account .
- আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট থেকে প্রমাণীকরণ করতে,
- Add the Cloud Firestore C# library to your app in your
.csproj
file:<ItemGroup> <PackageReference Include="Google.Cloud.Firestore" Version="1.1.0-beta01" /> </ItemGroup>
- Add the following to your
Program.cs
file:using Google.Cloud.Firestore;
রুবি
- The Cloud Firestore server client libraries (Java, Node.js, Python, Go, PHP, C#, and Ruby) use Google Application Default Credentials for authentication.
- আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট থেকে প্রমাণীকরণ করতে,
GOOGLE_APPLICATION_CREDENTIALS
এনভায়রনমেন্ট ভেরিয়েবলকে একটি JSON পরিষেবা অ্যাকাউন্ট কী ফাইলের দিকে নির্দেশ করতে সেট করুন। আপনি API কনসোল শংসাপত্র পৃষ্ঠায় একটি কী ফাইল তৈরি করতে পারেন।export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
- In your production environment, you do not need to authenticate if you run your application on App Engine or Compute Engine, using the same project that you use for Cloud Firestore . অন্যথায়, একটি পরিষেবা অ্যাকাউন্ট সেট আপ করুন ।
- আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট থেকে প্রমাণীকরণ করতে,
- Add the Cloud Firestore Ruby library to your app in your
Gemfile
:gem "google-cloud-firestore"
- Install dependencies from your
Gemfile
using:bundle install
(ঐচ্ছিক) Firebase Local Emulator Suite সাথে প্রোটোটাইপ এবং পরীক্ষা করুন
For mobile developers, before talking about how your app writes to and reads from Cloud Firestore , let's introduce a set of tools you can use to prototype and test Cloud Firestore functionality: Firebase Local Emulator Suite . If you're trying out different data models, optimizing your security rules, or working to find the most cost-effective way to interact with the back-end, being able to work locally without deploying live services can be a great idea.
A Cloud Firestore emulator is part of the Local Emulator Suite , which enables your app to interact with your emulated database content and config, as well as optionally your emulated project resources (functions, other databases, and security rules).
Cloud Firestore এমুলেটর ব্যবহার করার জন্য মাত্র কয়েকটি ধাপ জড়িত:
- Adding a line of code to your app's test config to connect to the emulator.
- আপনার স্থানীয় প্রজেক্ট ডিরেক্টরির রুট থেকে,
firebase emulators:start
। - Making calls from your app's prototype code using a Cloud Firestore platform SDK as usual.
A detailed walkthrough involving Cloud Firestore and Cloud Functions is available. আপনার Local Emulator Suite ভূমিকাটিও দেখতে হবে।
Cloud Firestore শুরু করুন
Cloud Firestore একটি উদাহরণ শুরু করুন:
Web
import { initializeApp } from "firebase/app"; import { getFirestore } from "firebase/firestore"; // TODO: Replace the following with your app's Firebase project configuration // See: https://support.google.com/firebase/answer/7015592 const firebaseConfig = { FIREBASE_CONFIGURATION }; // Initialize Firebase const app = initializeApp(firebaseConfig); // Initialize Cloud Firestore and get a reference to the service const db = getFirestore(app);
আপনার ওয়েব অ্যাপের firebaseConfig
দিয়ে FIREBASE_CONFIGURATION প্রতিস্থাপন করুন।
ডিভাইসটি সংযোগ হারিয়ে ফেললে ডেটা বজায় রাখতে, অফলাইন ডেটা ডকুমেন্টেশন সক্ষম করুন দেখুন।
Web
import firebase from "firebase/app"; import "firebase/firestore"; // TODO: Replace the following with your app's Firebase project configuration // See: https://support.google.com/firebase/answer/7015592 const firebaseConfig = { FIREBASE_CONFIGURATION }; // Initialize Firebase firebase.initializeApp(firebaseConfig); // Initialize Cloud Firestore and get a reference to the service const db = firebase.firestore();
আপনার ওয়েব অ্যাপের firebaseConfig
দিয়ে FIREBASE_CONFIGURATION প্রতিস্থাপন করুন।
ডিভাইসটি সংযোগ হারিয়ে ফেললে ডেটা বজায় রাখতে, অফলাইন ডেটা ডকুমেন্টেশন সক্ষম করুন দেখুন।
সুইফট
import FirebaseCore import FirebaseFirestore
FirebaseApp.configure() let db = Firestore.firestore()
উদ্দেশ্য-C
@import FirebaseCore; @import FirebaseFirestore; // Use Firebase library to configure APIs [FIRApp configure];
FIRFirestore *defaultFirestore = [FIRFirestore firestore];
Kotlin+KTX
// Access a Cloud Firestore instance from your Activity
val db = Firebase.firestore
Java
// Access a Cloud Firestore instance from your Activity
FirebaseFirestore db = FirebaseFirestore.getInstance();
Dart
db = FirebaseFirestore.instance;
জাভা
Cloud Firestore SDK আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়। নীচে সবচেয়ে সাধারণ পদ্ধতি আছে। একটি সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন SDK শুরু করুন দেখুন।import com.google.auth.oauth2.GoogleCredentials; import com.google.cloud.firestore.Firestore; import com.google.firebase.FirebaseApp; import com.google.firebase.FirebaseOptions; // Use the application default credentials GoogleCredentials credentials = GoogleCredentials.getApplicationDefault(); FirebaseOptions options = new FirebaseOptions.Builder() .setCredentials(credentials) .setProjectId(projectId) .build(); FirebaseApp.initializeApp(options); Firestore db = FirestoreClient.getFirestore();
আপনার নিজের সার্ভারে Firebase অ্যাডমিন SDK ব্যবহার করতে, একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন।
Google ক্লাউড কনসোলে IAM এবং অ্যাডমিন > পরিষেবা অ্যাকাউন্টে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন৷ তারপর SDK আরম্ভ করতে ফাইলটি ব্যবহার করুন:
import com.google.auth.oauth2.GoogleCredentials; import com.google.cloud.firestore.Firestore; import com.google.firebase.FirebaseApp; import com.google.firebase.FirebaseOptions; // Use a service account InputStream serviceAccount = new FileInputStream("path/to/serviceAccount.json"); GoogleCredentials credentials = GoogleCredentials.fromStream(serviceAccount); FirebaseOptions options = new FirebaseOptions.Builder() .setCredentials(credentials) .build(); FirebaseApp.initializeApp(options); Firestore db = FirestoreClient.getFirestore();
পাইথন
Cloud Firestore SDK আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়। নীচে সবচেয়ে সাধারণ পদ্ধতি আছে। একটি সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন SDK শুরু করুন দেখুন।import firebase_admin from firebase_admin import firestore # Application Default credentials are automatically created. app = firebase_admin.initialize_app() db = firestore.client()
একটি বিদ্যমান অ্যাপ্লিকেশন ডিফল্ট শংসাপত্রও SDK শুরু করতে ব্যবহার করা যেতে পারে।
import firebase_admin from firebase_admin import credentials from firebase_admin import firestore # Use the application default credentials. cred = credentials.ApplicationDefault() firebase_admin.initialize_app(cred) db = firestore.client()
আপনার নিজের সার্ভারে Firebase অ্যাডমিন SDK ব্যবহার করতে, একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন।
Google ক্লাউড কনসোলে IAM এবং অ্যাডমিন > পরিষেবা অ্যাকাউন্টে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন৷ তারপর SDK আরম্ভ করতে ফাইলটি ব্যবহার করুন:
import firebase_admin from firebase_admin import credentials from firebase_admin import firestore # Use a service account. cred = credentials.Certificate('path/to/serviceAccount.json') app = firebase_admin.initialize_app(cred) db = firestore.client()
Python
Cloud Firestore SDK আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়। নীচে সবচেয়ে সাধারণ পদ্ধতি আছে। একটি সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন SDK শুরু করুন দেখুন।import firebase_admin from firebase_admin import firestore_async # Application Default credentials are automatically created. app = firebase_admin.initialize_app() db = firestore_async.client()
একটি বিদ্যমান অ্যাপ্লিকেশন ডিফল্ট শংসাপত্রও SDK শুরু করতে ব্যবহার করা যেতে পারে।
import firebase_admin from firebase_admin import credentials from firebase_admin import firestore_async # Use the application default credentials. cred = credentials.ApplicationDefault() firebase_admin.initialize_app(cred) db = firestore_async.client()
আপনার নিজের সার্ভারে Firebase অ্যাডমিন SDK ব্যবহার করতে, একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন।
Google ক্লাউড কনসোলে IAM এবং অ্যাডমিন > পরিষেবা অ্যাকাউন্টে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন৷ তারপর SDK আরম্ভ করতে ফাইলটি ব্যবহার করুন:
import firebase_admin from firebase_admin import credentials from firebase_admin import firestore_async # Use a service account. cred = credentials.Certificate('path/to/serviceAccount.json') app = firebase_admin.initialize_app(cred) db = firestore_async.client()
সি++
// Make sure the call to `Create()` happens some time before you call Firestore::GetInstance(). App::Create(); Firestore* db = Firestore::GetInstance();
Node.js
Cloud Firestore SDK আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়। নীচে সবচেয়ে সাধারণ পদ্ধতি আছে। একটি সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন SDK শুরু করুন দেখুন।- Cloud Functions শুরু করুন
const { initializeApp, applicationDefault, cert } = require('firebase-admin/app'); const { getFirestore, Timestamp, FieldValue, Filter } = require('firebase-admin/firestore');
initializeApp(); const db = getFirestore();
- Google Cloud আরম্ভ করুন
const { initializeApp, applicationDefault, cert } = require('firebase-admin/app'); const { getFirestore, Timestamp, FieldValue, Filter } = require('firebase-admin/firestore');
initializeApp({ credential: applicationDefault() }); const db = getFirestore();
- আপনার নিজের সার্ভারে আরম্ভ করুন
আপনার নিজের সার্ভারে (বা অন্য কোন Node.js পরিবেশে) Firebase অ্যাডমিন SDK ব্যবহার করতে, একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন। Google ক্লাউড কনসোলে IAM এবং অ্যাডমিন > পরিষেবা অ্যাকাউন্টে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন৷ তারপর SDK আরম্ভ করতে ফাইলটি ব্যবহার করুন:
const { initializeApp, applicationDefault, cert } = require('firebase-admin/app'); const { getFirestore, Timestamp, FieldValue, Filter } = require('firebase-admin/firestore');
const serviceAccount = require('./path/to/serviceAccountKey.json'); initializeApp({ credential: cert(serviceAccount) }); const db = getFirestore();
যাও
Cloud Firestore SDK আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়। নীচে সবচেয়ে সাধারণ পদ্ধতি আছে। একটি সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন SDK শুরু করুন দেখুন।import ( "log" firebase "firebase.google.com/go" "google.golang.org/api/option" ) // Use the application default credentials ctx := context.Background() conf := &firebase.Config{ProjectID: projectID} app, err := firebase.NewApp(ctx, conf) if err != nil { log.Fatalln(err) } client, err := app.Firestore(ctx) if err != nil { log.Fatalln(err) } defer client.Close()
আপনার নিজের সার্ভারে Firebase অ্যাডমিন SDK ব্যবহার করতে, একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন।
Google ক্লাউড কনসোলে IAM এবং অ্যাডমিন > পরিষেবা অ্যাকাউন্টে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন৷ তারপর SDK আরম্ভ করতে ফাইলটি ব্যবহার করুন:
import ( "log" firebase "firebase.google.com/go" "google.golang.org/api/option" ) // Use a service account ctx := context.Background() sa := option.WithCredentialsFile("path/to/serviceAccount.json") app, err := firebase.NewApp(ctx, nil, sa) if err != nil { log.Fatalln(err) } client, err := app.Firestore(ctx) if err != nil { log.Fatalln(err) } defer client.Close()
পিএইচপি
পিএইচপি
একটি Cloud Firestore ক্লায়েন্ট ইনস্টল এবং তৈরি করার বিষয়ে আরও জানতে, Cloud Firestore ক্লায়েন্ট লাইব্রেরি দেখুন।
ঐক্য
using Firebase.Firestore; using Firebase.Extensions;
FirebaseFirestore db = FirebaseFirestore.DefaultInstance;
সি#
সি#
একটি Cloud Firestore ক্লায়েন্ট ইনস্টল এবং তৈরি করার বিষয়ে আরও জানতে, Cloud Firestore ক্লায়েন্ট লাইব্রেরি দেখুন।
রুবি
ডেটা যোগ করুন
Cloud Firestore ডকুমেন্টগুলিতে ডেটা সঞ্চয় করে, যা সংগ্রহগুলিতে সংরক্ষণ করা হয়। Cloud Firestore creates collections and documents implicitly the first time you add data to the document. আপনার সুস্পষ্টভাবে সংগ্রহ বা নথি তৈরি করার দরকার নেই।
নিম্নলিখিত উদাহরণ কোড ব্যবহার করে একটি নতুন সংগ্রহ এবং একটি নথি তৈরি করুন।
Web
import { collection, addDoc } from "firebase/firestore"; try { const docRef = await addDoc(collection(db, "users"), { first: "Ada", last: "Lovelace", born: 1815 }); console.log("Document written with ID: ", docRef.id); } catch (e) { console.error("Error adding document: ", e); }
Web
db.collection("users").add({ first: "Ada", last: "Lovelace", born: 1815 }) .then((docRef) => { console.log("Document written with ID: ", docRef.id); }) .catch((error) => { console.error("Error adding document: ", error); });
সুইফট
// Add a new document with a generated ID do { let ref = try await db.collection("users").addDocument(data: [ "first": "Ada", "last": "Lovelace", "born": 1815 ]) print("Document added with ID: \(ref.documentID)") } catch { print("Error adding document: \(error)") }
উদ্দেশ্য-C
// Add a new document with a generated ID __block FIRDocumentReference *ref = [[self.db collectionWithPath:@"users"] addDocumentWithData:@{ @"first": @"Ada", @"last": @"Lovelace", @"born": @1815 } completion:^(NSError * _Nullable error) { if (error != nil) { NSLog(@"Error adding document: %@", error); } else { NSLog(@"Document added with ID: %@", ref.documentID); } }];
Kotlin+KTX
// Create a new user with a first and last name val user = hashMapOf( "first" to "Ada", "last" to "Lovelace", "born" to 1815, ) // Add a new document with a generated ID db.collection("users") .add(user) .addOnSuccessListener { documentReference -> Log.d(TAG, "DocumentSnapshot added with ID: ${documentReference.id}") } .addOnFailureListener { e -> Log.w(TAG, "Error adding document", e) }
Java
// Create a new user with a first and last name Map<String, Object> user = new HashMap<>(); user.put("first", "Ada"); user.put("last", "Lovelace"); user.put("born", 1815); // Add a new document with a generated ID db.collection("users") .add(user) .addOnSuccessListener(new OnSuccessListener<DocumentReference>() { @Override public void onSuccess(DocumentReference documentReference) { Log.d(TAG, "DocumentSnapshot added with ID: " + documentReference.getId()); } }) .addOnFailureListener(new OnFailureListener() { @Override public void onFailure(@NonNull Exception e) { Log.w(TAG, "Error adding document", e); } });
Dart
// Create a new user with a first and last name final user = <String, dynamic>{ "first": "Ada", "last": "Lovelace", "born": 1815 }; // Add a new document with a generated ID db.collection("users").add(user).then((DocumentReference doc) => print('DocumentSnapshot added with ID: ${doc.id}'));
জাভা
পাইথন
Python
সি++
// Add a new document with a generated ID Future<DocumentReference> user_ref = db->Collection("users").Add({{"first", FieldValue::String("Ada")}, {"last", FieldValue::String("Lovelace")}, {"born", FieldValue::Integer(1815)}}); user_ref.OnCompletion([](const Future<DocumentReference>& future) { if (future.error() == Error::kErrorOk) { std::cout << "DocumentSnapshot added with ID: " << future.result()->id() << std::endl; } else { std::cout << "Error adding document: " << future.error_message() << std::endl; } });
Node.js
যাও
পিএইচপি
পিএইচপি
একটি Cloud Firestore ক্লায়েন্ট ইনস্টল এবং তৈরি করার বিষয়ে আরও জানতে, Cloud Firestore ক্লায়েন্ট লাইব্রেরি দেখুন।
ঐক্য
DocumentReference docRef = db.Collection("users").Document("alovelace"); Dictionary<string, object> user = new Dictionary<string, object> { { "First", "Ada" }, { "Last", "Lovelace" }, { "Born", 1815 }, }; docRef.SetAsync(user).ContinueWithOnMainThread(task => { Debug.Log("Added data to the alovelace document in the users collection."); });
সি#
রুবি
এখন users
সংগ্রহে আরেকটি নথি যোগ করুন। লক্ষ্য করুন যে এই নথিতে একটি কী-মানের জোড়া (মাঝের নাম) রয়েছে যা প্রথম নথিতে প্রদর্শিত হয় না। একটি সংগ্রহের নথিতে তথ্যের বিভিন্ন সেট থাকতে পারে।
Web
// Add a second document with a generated ID. import { addDoc, collection } from "firebase/firestore"; try { const docRef = await addDoc(collection(db, "users"), { first: "Alan", middle: "Mathison", last: "Turing", born: 1912 }); console.log("Document written with ID: ", docRef.id); } catch (e) { console.error("Error adding document: ", e); }
Web
// Add a second document with a generated ID. db.collection("users").add({ first: "Alan", middle: "Mathison", last: "Turing", born: 1912 }) .then((docRef) => { console.log("Document written with ID: ", docRef.id); }) .catch((error) => { console.error("Error adding document: ", error); });
সুইফট
// Add a second document with a generated ID. do { let ref = try await db.collection("users").addDocument(data: [ "first": "Alan", "middle": "Mathison", "last": "Turing", "born": 1912 ]) print("Document added with ID: \(ref.documentID)") } catch { print("Error adding document: \(error)") }
উদ্দেশ্য-C
// Add a second document with a generated ID. __block FIRDocumentReference *ref = [[self.db collectionWithPath:@"users"] addDocumentWithData:@{ @"first": @"Alan", @"middle": @"Mathison", @"last": @"Turing", @"born": @1912 } completion:^(NSError * _Nullable error) { if (error != nil) { NSLog(@"Error adding document: %@", error); } else { NSLog(@"Document added with ID: %@", ref.documentID); } }];
Kotlin+KTX
// Create a new user with a first, middle, and last name val user = hashMapOf( "first" to "Alan", "middle" to "Mathison", "last" to "Turing", "born" to 1912, ) // Add a new document with a generated ID db.collection("users") .add(user) .addOnSuccessListener { documentReference -> Log.d(TAG, "DocumentSnapshot added with ID: ${documentReference.id}") } .addOnFailureListener { e -> Log.w(TAG, "Error adding document", e) }
Java
// Create a new user with a first, middle, and last name Map<String, Object> user = new HashMap<>(); user.put("first", "Alan"); user.put("middle", "Mathison"); user.put("last", "Turing"); user.put("born", 1912); // Add a new document with a generated ID db.collection("users") .add(user) .addOnSuccessListener(new OnSuccessListener<DocumentReference>() { @Override public void onSuccess(DocumentReference documentReference) { Log.d(TAG, "DocumentSnapshot added with ID: " + documentReference.getId()); } }) .addOnFailureListener(new OnFailureListener() { @Override public void onFailure(@NonNull Exception e) { Log.w(TAG, "Error adding document", e); } });
Dart
// Create a new user with a first and last name final user = <String, dynamic>{ "first": "Alan", "middle": "Mathison", "last": "Turing", "born": 1912 }; // Add a new document with a generated ID db.collection("users").add(user).then((DocumentReference doc) => print('DocumentSnapshot added with ID: ${doc.id}'));
জাভা
পাইথন
Python
সি++
db->Collection("users") .Add({{"first", FieldValue::String("Alan")}, {"middle", FieldValue::String("Mathison")}, {"last", FieldValue::String("Turing")}, {"born", FieldValue::Integer(1912)}}) .OnCompletion([](const Future<DocumentReference>& future) { if (future.error() == Error::kErrorOk) { std::cout << "DocumentSnapshot added with ID: " << future.result()->id() << std::endl; } else { std::cout << "Error adding document: " << future.error_message() << std::endl; } });
Node.js
যাও
পিএইচপি
পিএইচপি
একটি Cloud Firestore ক্লায়েন্ট ইনস্টল এবং তৈরি করার বিষয়ে আরও জানতে, Cloud Firestore ক্লায়েন্ট লাইব্রেরি দেখুন।
ঐক্য
DocumentReference docRef = db.Collection("users").Document("aturing"); Dictionary<string, object> user = new Dictionary<string, object> { { "First", "Alan" }, { "Middle", "Mathison" }, { "Last", "Turing" }, { "Born", 1912 } }; docRef.SetAsync(user).ContinueWithOnMainThread(task => { Debug.Log("Added data to the aturing document in the users collection."); });
সি#
রুবি
ডেটা পড়ুন
আপনি Cloud Firestore ডেটা যোগ করেছেন তা দ্রুত যাচাই করতে Firebase কনসোলে ডেটা ভিউয়ার ব্যবহার করুন।
আপনি সম্পূর্ণ সংগ্রহ পুনরুদ্ধার করতে "পান" পদ্ধতি ব্যবহার করতে পারেন।
Web
import { collection, getDocs } from "firebase/firestore"; const querySnapshot = await getDocs(collection(db, "users")); querySnapshot.forEach((doc) => { console.log(`${doc.id} => ${doc.data()}`); });
Web
db.collection("users").get().then((querySnapshot) => { querySnapshot.forEach((doc) => { console.log(`${doc.id} => ${doc.data()}`); }); });
সুইফট
do { let snapshot = try await db.collection("users").getDocuments() for document in snapshot.documents { print("\(document.documentID) => \(document.data())") } } catch { print("Error getting documents: \(error)") }
উদ্দেশ্য-C
[[self.db collectionWithPath:@"users"] getDocumentsWithCompletion:^(FIRQuerySnapshot * _Nullable snapshot, NSError * _Nullable error) { if (error != nil) { NSLog(@"Error getting documents: %@", error); } else { for (FIRDocumentSnapshot *document in snapshot.documents) { NSLog(@"%@ => %@", document.documentID, document.data); } } }];
Kotlin+KTX
db.collection("users") .get() .addOnSuccessListener { result -> for (document in result) { Log.d(TAG, "${document.id} => ${document.data}") } } .addOnFailureListener { exception -> Log.w(TAG, "Error getting documents.", exception) }
Java
db.collection("users") .get() .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() { @Override public void onComplete(@NonNull Task<QuerySnapshot> task) { if (task.isSuccessful()) { for (QueryDocumentSnapshot document : task.getResult()) { Log.d(TAG, document.getId() + " => " + document.getData()); } } else { Log.w(TAG, "Error getting documents.", task.getException()); } } });
Dart
await db.collection("users").get().then((event) { for (var doc in event.docs) { print("${doc.id} => ${doc.data()}"); } });
জাভা
পাইথন
users_ref = db.collection("users") docs = users_ref.stream() for doc in docs: print(f"{doc.id} => {doc.to_dict()}")
Python
সি++
Future<QuerySnapshot> users = db->Collection("users").Get(); users.OnCompletion([](const Future<QuerySnapshot>& future) { if (future.error() == Error::kErrorOk) { for (const DocumentSnapshot& document : future.result()->documents()) { std::cout << document << std::endl; } } else { std::cout << "Error getting documents: " << future.error_message() << std::endl; } });
Node.js
যাও
পিএইচপি
পিএইচপি
একটি Cloud Firestore ক্লায়েন্ট ইনস্টল এবং তৈরি করার বিষয়ে আরও জানতে, Cloud Firestore ক্লায়েন্ট লাইব্রেরি দেখুন।
ঐক্য
CollectionReference usersRef = db.Collection("users"); usersRef.GetSnapshotAsync().ContinueWithOnMainThread(task => { QuerySnapshot snapshot = task.Result; foreach (DocumentSnapshot document in snapshot.Documents) { Debug.Log(String.Format("User: {0}", document.Id)); Dictionary<string, object> documentDictionary = document.ToDictionary(); Debug.Log(String.Format("First: {0}", documentDictionary["First"])); if (documentDictionary.ContainsKey("Middle")) { Debug.Log(String.Format("Middle: {0}", documentDictionary["Middle"])); } Debug.Log(String.Format("Last: {0}", documentDictionary["Last"])); Debug.Log(String.Format("Born: {0}", documentDictionary["Born"])); } Debug.Log("Read all data from the users collection."); });
সি#
রুবি
আপনার ডেটা সুরক্ষিত করুন
আপনি যদি ওয়েব, অ্যান্ড্রয়েড বা অ্যাপল প্ল্যাটফর্ম SDK ব্যবহার করেন, Cloud Firestore আপনার ডেটা সুরক্ষিত করতে Firebase প্রমাণীকরণ এবং Cloud Firestore Security Rules ব্যবহার করুন।
এখানে কিছু মৌলিক নিয়ম সেট রয়েছে যা আপনি শুরু করতে ব্যবহার করতে পারেন। আপনি কনসোলের নিয়ম ট্যাবে আপনার নিরাপত্তা নিয়ম সংশোধন করতে পারেন।
প্রমাণ প্রয়োজন
// Allow read/write access to a document keyed by the user's UID
service cloud.firestore {
match /databases/{database}/documents {
match /users/{uid} {
allow read, write: if request.auth != null && request.auth.uid == uid;
}
}
}
লক করা মোড
// Deny read/write access to all users under any conditions
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if false;
}
}
}
আপনি উৎপাদনে আপনার ওয়েব, অ্যান্ড্রয়েড বা iOS অ্যাপ স্থাপন করার আগে, শুধুমাত্র আপনার অ্যাপ ক্লায়েন্টরা আপনার Cloud Firestore ডেটা অ্যাক্সেস করতে পারে তা নিশ্চিত করার জন্য পদক্ষেপ নিন। See the App Check documentation.
আপনি যদি সার্ভার SDK-এর একটি ব্যবহার করেন, তাহলে Cloud Firestore এ আপনার ডেটা সুরক্ষিত করতে আইডেন্টিটি অ্যান্ড অ্যাকসেস ম্যানেজমেন্ট (IAM) ব্যবহার করুন।
একটি ভিডিও টিউটোরিয়াল দেখুন
Cloud Firestore মোবাইল ক্লায়েন্ট লাইব্রেরিগুলির সাথে শুরু করার বিষয়ে বিস্তারিত নির্দেশনার জন্য, নিম্নলিখিত ভিডিও টিউটোরিয়ালগুলির মধ্যে একটি দেখুন:
ওয়েব
iOS+
অ্যান্ড্রয়েড
আপনি Firebase YouTube চ্যানেলে আরও ভিডিও খুঁজে পেতে পারেন।
পরবর্তী পদক্ষেপ
নিম্নলিখিত বিষয়গুলির সাথে আপনার জ্ঞানকে আরও গভীর করুন:
- Codelabs — Learn to use Cloud Firestore in a real app by following the codelab for Android , iOS , or Web .
- ডেটা মডেল — Cloud Firestore ডেটা কীভাবে গঠন করা হয় সে সম্পর্কে আরও জানুন, শ্রেণীবদ্ধ ডেটা এবং উপ-সংগ্রহগুলি সহ।
- Add data — Learn more about creating and updating data in Cloud Firestore .
- Get data — Learn more about how to retrieve data.
- সহজ এবং যৌগিক প্রশ্নগুলি সম্পাদন করুন - কীভাবে সহজ এবং যৌগিক প্রশ্নগুলি চালানো যায় তা শিখুন।
- Order and limit queries Learn how to order and limit the data returned by your queries.