यह क्विकस्टार्ट आपको दिखाता है कि क्लाउड फायरस्टोर कैसे सेट अप करें, डेटा जोड़ें, फिर वह डेटा देखें जिसे आपने अभी-अभी फायरबेस कंसोल में जोड़ा है।
क्लाउड फायरस्टोर डेटाबेस बनाएं
यदि आपने पहले से एक फायरबेस प्रोजेक्ट नहीं बनाया है: फायरबेस कंसोल में, प्रोजेक्ट जोड़ें पर क्लिक करें, फिर फायरबेस प्रोजेक्ट बनाने या किसी मौजूदा जीसीपी प्रोजेक्ट में फायरबेस सेवाओं को जोड़ने के लिए ऑन-स्क्रीन निर्देशों का पालन करें।
Firebase कंसोल के Cloud Firestore सेक्शन में नेविगेट करें। आपको मौजूदा फायरबेस प्रोजेक्ट चुनने के लिए कहा जाएगा। डेटाबेस निर्माण कार्यप्रवाह का पालन करें।
अपने क्लाउड फायरस्टार सुरक्षा नियमों के लिए एक शुरुआती मोड चुनें:
- परीक्षण मोड
मोबाइल और वेब क्लाइंट लाइब्रेरी के साथ आरंभ करने के लिए अच्छा है, लेकिन किसी को भी आपके डेटा को पढ़ने और अधिलेखित करने की अनुमति देता है। परीक्षण के बाद, अपना डेटा सुरक्षित करें अनुभाग की समीक्षा करना सुनिश्चित करें.
वेब, Apple प्लेटफ़ॉर्म या Android SDK के साथ आरंभ करने के लिए, परीक्षण मोड का चयन करें।
- लॉक मोड
मोबाइल और वेब क्लाइंट से सभी पढ़ने और लिखने से इनकार करता है। आपके प्रमाणित एप्लिकेशन सर्वर (C#, Go, Java, Node.js, PHP, Python, or Ruby) अभी भी आपके डेटाबेस तक पहुंच सकते हैं।
C#, Go, Java, Node.js, PHP, Python, या Ruby सर्वर क्लाइंट लाइब्रेरी के साथ आरंभ करने के लिए, लॉक मोड का चयन करें।
अपने डेटाबेस के लिए एक स्थान का चयन करें।
यह स्थान सेटिंग आपके प्रोजेक्ट का डिफ़ॉल्ट Google क्लाउड प्लेटफ़ॉर्म (GCP) संसाधन स्थान है। ध्यान दें कि इस स्थान का उपयोग आपके प्रोजेक्ट में GCP सेवाओं के लिए किया जाएगा, जिसके लिए स्थान सेटिंग की आवश्यकता होती है, विशेष रूप से, आपकी डिफ़ॉल्ट क्लाउड स्टोरेज बकेट और आपका ऐप इंजन ऐप (जो क्लाउड शेड्यूलर का उपयोग करने पर आवश्यक है)।
यदि आप किसी स्थान का चयन करने में सक्षम नहीं हैं, तो आपके प्रोजेक्ट में पहले से ही एक डिफ़ॉल्ट GCP संसाधन स्थान है। यह या तो प्रोजेक्ट निर्माण के दौरान या किसी अन्य सेवा को सेट करते समय सेट किया गया था जिसके लिए स्थान सेटिंग की आवश्यकता होती है।
हो गया क्लिक करें.
जब आप क्लाउड फायरस्टोर को सक्षम करते हैं, तो यह क्लाउड एपीआई मैनेजर में एपीआई को भी सक्षम करता है।
अपना विकास वातावरण स्थापित करें
अपने ऐप में आवश्यक डिपेंडेंसी और क्लाइंट लाइब्रेरी जोड़ें।
Web namespaced API
- Firebase को अपने वेब ऐप में जोड़ने के लिए निर्देशों का पालन करें।
- अपने ऐप में Firebase और Cloud Firestore लाइब्रेरी जोड़ें:
<script src="https://www.gstatic.com/firebasejs/9.22.1/firebase-app-compat.js"></script> <script src="https://www.gstatic.com/firebasejs/9.22.1/firebase-firestore-compat.js"></script>
Cloud Firestore SDK भी npm पैकेज के रूप में उपलब्ध है।npm install firebase@9.22.1 --save
आपको मैन्युअल रूप से Firebase और Cloud Firestore दोनों की आवश्यकता होगी।import firebase from "firebase/compat/app"; // Required for side-effects import "firebase/firestore";
Web modular API
- Firebase को अपने वेब ऐप में जोड़ने के लिए निर्देशों का पालन करें।
- क्लाउड फायरस्टोर एसडीके एनपीएम पैकेज के रूप में उपलब्ध है।
npm install firebase@9.22.1 --save
आपको Firebase और Cloud Firestore दोनों को इम्पोर्ट करना होगा।import { initializeApp } from "firebase/app"; import { getFirestore } from "firebase/firestore";
आईओएस+
अपने Apple ऐप में Firebase को जोड़ने के लिए निर्देशों का पालन करें।
फायरबेस निर्भरताओं को स्थापित और प्रबंधित करने के लिए स्विफ्ट पैकेज मैनेजर का उपयोग करें।
- Xcode में, अपने ऐप प्रोजेक्ट को खोलने के साथ, File > Swift Package > Add Package Dependency पर नेविगेट करें।
- संकेत दिए जाने पर, Firebase Apple प्लेटफ़ॉर्म SDK रिपॉजिटरी जोड़ें:
- फायरस्टार लाइब्रेरी चुनें।
- समाप्त होने पर, Xcode स्वचालित रूप से पृष्ठभूमि में आपकी निर्भरताओं को हल करना और डाउनलोड करना शुरू कर देगा।
https://github.com/firebase/firebase-ios-sdk
Kotlin+KTX
- अपने Android ऐप में Firebase को जोड़ने के लिए निर्देशों का पालन करें।
- Firebase Android BoM का उपयोग करके, अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल (आमतौर पर
app/build.gradle
) में Cloud Firestore Android लाइब्रेरी के लिए निर्भरता की घोषणा करें।dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.1.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-ktx' }
Firebase Android BoM का उपयोग करके, आपका ऐप हमेशा Firebase Android पुस्तकालयों के संगत संस्करणों का उपयोग करेगा।
(वैकल्पिक) बीओएम का उपयोग किए बिना फायरबेस लाइब्रेरी निर्भरताओं की घोषणा करें
यदि आप Firebase BoM का उपयोग नहीं करना चुनते हैं, तो आपको प्रत्येक Firebase लाइब्रेरी संस्करण को उसकी निर्भरता रेखा में निर्दिष्ट करना होगा।
ध्यान दें कि यदि आप अपने ऐप में कई फायरबेस लाइब्रेरी का उपयोग करते हैं, तो हम लाइब्रेरी संस्करणों को प्रबंधित करने के लिए बीओएम का उपयोग करने की अत्यधिक अनुशंसा करते हैं, जो सुनिश्चित करता है कि सभी संस्करण संगत हैं।
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-ktx:24.6.1' }
Java
- अपने Android ऐप में Firebase को जोड़ने के लिए निर्देशों का पालन करें।
- Firebase Android BoM का उपयोग करके, अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल (आमतौर पर
app/build.gradle
) में Cloud Firestore Android लाइब्रेरी के लिए निर्भरता की घोषणा करें।dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.1.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 पुस्तकालयों के संगत संस्करणों का उपयोग करेगा।
(वैकल्पिक) बीओएम का उपयोग किए बिना फायरबेस लाइब्रेरी निर्भरताओं की घोषणा करें
यदि आप Firebase BoM का उपयोग नहीं करना चुनते हैं, तो आपको प्रत्येक Firebase लाइब्रेरी संस्करण को उसकी निर्भरता रेखा में निर्दिष्ट करना होगा।
ध्यान दें कि यदि आप अपने ऐप में कई फायरबेस लाइब्रेरी का उपयोग करते हैं, तो हम लाइब्रेरी संस्करणों को प्रबंधित करने के लिए बीओएम का उपयोग करने की अत्यधिक अनुशंसा करते हैं, जो सुनिश्चित करता है कि सभी संस्करण संगत हैं।
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:24.6.1' }
Dart
- यदि आपने पहले से नहीं किया है, तो अपने Flutter ऐप में Firebase को कॉन्फ़िगर और इनिशियलाइज़ करें ।
- अपने स्पंदन प्रोजेक्ट की जड़ से, प्लगइन स्थापित करने के लिए निम्न कमांड चलाएँ:
flutter pub add cloud_firestore
- एक बार पूरा हो जाने पर, अपने स्पंदन एप्लिकेशन का पुनर्निर्माण करें:
flutter run
- वैकल्पिक: पूर्व-संकलित ढांचे को शामिल करके iOS और macOS के निर्माण समय में सुधार करें।
वर्तमान में, iOS के लिए Firestore SDK कोड पर निर्भर करता है जिसे Xcode में बनाने में 5 मिनट से अधिक का समय लग सकता है। बिल्ड समय को महत्वपूर्ण रूप से कम करने के लिए, आप इस पंक्ति को अपने पॉडफाइल में
target 'Runner' do
ब्लॉक में जोड़कर एक पूर्व-संकलित संस्करण का उपयोग कर सकते हैं:target 'Runner' do pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '8.15.0' # ... end
इसके अतिरिक्त, सुनिश्चित करें कि आपने CocoaPods को 1.9.1 या उच्चतर में अपग्रेड किया है:
gem install cocoapods
अधिक जानकारी के लिए GitHub पर समस्या देखें।
जावा
- अपने ऐप में फायरबेस एडमिन एसडीके जोड़ें:
- ग्रैडल का उपयोग करना:
compile 'com.google.firebase:firebase-admin:1.32.0'
- मेवेन का उपयोग करना:
<dependency> <groupId>com.google.firebase</groupId> <artifactId>firebase-admin</artifactId> <version>1.32.0</version> </dependency>
- ग्रैडल का उपयोग करना:
- अपने वातावरण में उचित क्रेडेंशियल्स के साथ Cloud Firestore को इनिशियलाइज़ करने के लिए नीचे दिए गए निर्देशों का पालन करें।
अजगर
- अपने पायथन ऐप में फायरबेस एडमिन एसडीके जोड़ें:
pip install --upgrade firebase-admin
- अपने वातावरण में उचित क्रेडेंशियल्स के साथ Cloud Firestore को इनिशियलाइज़ करने के लिए नीचे दिए गए निर्देशों का पालन करें।
सी ++
- अपने C++ प्रोजेक्ट में Firebase को जोड़ने के लिए निर्देशों का पालन करें।
- Android के लिए 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 के लिए एकता इंटरफ़ेस।
- फ़ाइल > बिल्ड सेटिंग्स चुनें
- 'प्लेटफ़ॉर्म' को 'एंड्रॉइड' में बदलें और 'स्विच प्लेटफ़ॉर्म' पर क्लिक करें
- 'खिलाड़ी सेटिंग...' क्लिक करें
- मुख्य एकता UI में, 'एंड्रॉइड के लिए सेटिंग' के अंतर्गत, 'प्रकाशन सेटिंग' चुनें
- 'Minify' सेक्शन के तहत, रिलीज़ और डीबग सेटिंग दोनों को 'कोई नहीं' से 'ProGuard' में बदलें
Android के लिए निर्माण करते समय, Android DEX सीमा से बचने के लिए ProGuarding को सक्षम करें। ऐसा करने के लिए, एकता संपादक में:
नोड.जेएस
- अपने ऐप में फायरबेस एडमिन एसडीके जोड़ें:
npm install firebase-admin --save
- अपने वातावरण में उचित क्रेडेंशियल्स के साथ Cloud Firestore को इनिशियलाइज़ करने के लिए नीचे दिए गए निर्देशों का पालन करें।
जाना
- अपने Go ऐप में Firebase Admin SDK जोड़ें:
go get firebase.google.com/go
- अपने वातावरण में उचित क्रेडेंशियल्स के साथ Cloud Firestore को इनिशियलाइज़ करने के लिए नीचे दिए गए निर्देशों का पालन करें।
पीएचपी
- Cloud Firestore सर्वर क्लाइंट लाइब्रेरी (Java, Node.js, Python, Go, PHP, C#, और Ruby) प्रमाणीकरण के लिए Google एप्लिकेशन डिफ़ॉल्ट क्रेडेंशियल का उपयोग करती हैं।
- अपने डेवलपमेंट परिवेश से प्रमाणित करने के लिए,
GOOGLE_APPLICATION_CREDENTIALS
परिवेश चर को JSON सेवा खाता कुंजी फ़ाइल पर इंगित करने के लिए सेट करें. आप API कंसोल क्रेडेंशियल पेज पर एक कुंजी फ़ाइल बना सकते हैं।export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
- आपके उत्पादन वातावरण में, यदि आप क्लाउड फायरस्टोर के लिए उपयोग किए जाने वाले प्रोजेक्ट का उपयोग करके ऐप इंजन या कंप्यूट इंजन पर अपना एप्लिकेशन चलाते हैं, तो आपको प्रमाणित करने की आवश्यकता नहीं है। अन्यथा, एक सेवा खाता सेट करें ।
- अपने डेवलपमेंट परिवेश से प्रमाणित करने के लिए,
- PHP के लिए gRPC एक्सटेंशन को स्थापित और सक्षम करें, जिसकी आपको क्लाइंट लाइब्रेरी का उपयोग करने की आवश्यकता होगी।
- क्लाउड फायरस्टोर PHP लाइब्रेरी को अपने ऐप में जोड़ें:
composer require google/cloud-firestore
सी#
- Cloud Firestore सर्वर क्लाइंट लाइब्रेरी (Java, Node.js, Python, Go, PHP, C#, और Ruby) प्रमाणीकरण के लिए Google एप्लिकेशन डिफ़ॉल्ट क्रेडेंशियल का उपयोग करती हैं।
- अपने डेवलपमेंट परिवेश से प्रमाणित करने के लिए,
GOOGLE_APPLICATION_CREDENTIALS
परिवेश चर को JSON सेवा खाता कुंजी फ़ाइल पर इंगित करने के लिए सेट करें. आप API कंसोल क्रेडेंशियल पेज पर एक कुंजी फ़ाइल बना सकते हैं।export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
- आपके उत्पादन वातावरण में, यदि आप क्लाउड फायरस्टोर के लिए उपयोग किए जाने वाले प्रोजेक्ट का उपयोग करके ऐप इंजन या कंप्यूट इंजन पर अपना एप्लिकेशन चलाते हैं, तो आपको प्रमाणित करने की आवश्यकता नहीं है। अन्यथा, एक सेवा खाता सेट करें ।
- अपने डेवलपमेंट परिवेश से प्रमाणित करने के लिए,
- अपनी
.csproj
फ़ाइल में अपने ऐप में Cloud Firestore C# लाइब्रेरी जोड़ें:<ItemGroup> <PackageReference Include="Google.Cloud.Firestore" Version="1.1.0-beta01" /> </ItemGroup>
- अपनी
Program.cs
फ़ाइल में निम्न जोड़ें:using Google.Cloud.Firestore;
माणिक
- Cloud Firestore सर्वर क्लाइंट लाइब्रेरी (Java, Node.js, Python, Go, PHP, C#, और Ruby) प्रमाणीकरण के लिए Google एप्लिकेशन डिफ़ॉल्ट क्रेडेंशियल का उपयोग करती हैं।
- अपने डेवलपमेंट परिवेश से प्रमाणित करने के लिए,
GOOGLE_APPLICATION_CREDENTIALS
परिवेश चर को JSON सेवा खाता कुंजी फ़ाइल पर इंगित करने के लिए सेट करें. आप API कंसोल क्रेडेंशियल पेज पर एक कुंजी फ़ाइल बना सकते हैं।export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
- आपके उत्पादन वातावरण में, यदि आप क्लाउड फायरस्टोर के लिए उपयोग किए जाने वाले प्रोजेक्ट का उपयोग करके ऐप इंजन या कंप्यूट इंजन पर अपना एप्लिकेशन चलाते हैं, तो आपको प्रमाणित करने की आवश्यकता नहीं है। अन्यथा, एक सेवा खाता सेट करें ।
- अपने डेवलपमेंट परिवेश से प्रमाणित करने के लिए,
- अपने
Gemfile
में अपने ऐप में क्लाउड फायरस्टोर रूबी लाइब्रेरी जोड़ें:gem "google-cloud-firestore"
- अपने
Gemfile
से निर्भरताएँ स्थापित करें:bundle install
(वैकल्पिक) फायरबेस लोकल एमुलेटर सूट के साथ प्रोटोटाइप और परीक्षण
मोबाइल डेवलपर्स के लिए, इस बारे में बात करने से पहले कि आपका ऐप Cloud Firestore को कैसे लिखता और पढ़ता है, आइए टूल का एक सेट पेश करते हैं जिसका उपयोग आप प्रोटोटाइप और Cloud Firestore कार्यक्षमता का परीक्षण करने के लिए कर सकते हैं: Firebase स्थानीय एमुलेटर सुइट। यदि आप अलग-अलग डेटा मॉडल आज़मा रहे हैं, अपने सुरक्षा नियमों का अनुकूलन कर रहे हैं, या बैक-एंड के साथ इंटरैक्ट करने का सबसे किफायती तरीका खोजने के लिए काम कर रहे हैं, तो लाइव सेवाओं को तैनात किए बिना स्थानीय रूप से काम करने में सक्षम होना एक अच्छा विचार हो सकता है।
क्लाउड फायरस्टोर एम्यूलेटर लोकल इम्यूलेटर सूट का हिस्सा है, जो आपके ऐप को आपके एमुलेटेड डेटाबेस कंटेंट और कॉन्फिग के साथ-साथ वैकल्पिक रूप से आपके एमुलेटेड प्रोजेक्ट संसाधनों (फ़ंक्शंस, अन्य डेटाबेस और सुरक्षा नियम) के साथ इंटरैक्ट करने में सक्षम बनाता है।
क्लाउड फायरस्टोर एमुलेटर का उपयोग करने में बस कुछ ही चरण शामिल हैं:
- एमुलेटर से कनेक्ट करने के लिए अपने ऐप के टेस्ट कॉन्फ़िगरेशन में कोड की एक पंक्ति जोड़ना।
- आपकी स्थानीय प्रोजेक्ट निर्देशिका की जड़ से,
firebase emulators:start
। - हमेशा की तरह Cloud Firestore प्लैटफ़ॉर्म SDK का इस्तेमाल करके अपने ऐप्लिकेशन के प्रोटोटाइप कोड से कॉल करना.
क्लाउड फायरस्टोर और क्लाउड फ़ंक्शंस से संबंधित एक विस्तृत पूर्वाभ्यास उपलब्ध है। आपको स्थानीय इम्यूलेटर सुइट परिचय पर भी एक नज़र डालनी चाहिए।
क्लाउड फायरस्टोर को इनिशियलाइज़ करें
क्लाउड फायरस्टार का एक उदाहरण आरंभ करें:
Web modular API
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);
FIREBASE_CONFIGURATION अपने वेब ऐप के firebaseConfig
से बदलें।
जब उपकरण अपना कनेक्शन खो देता है तो डेटा को बनाए रखने के लिए, ऑफ़लाइन डेटा सक्षम करें दस्तावेज़ीकरण देखें।
Web namespaced API
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();
FIREBASE_CONFIGURATION अपने वेब ऐप के firebaseConfig
से बदलें।
जब उपकरण अपना कनेक्शन खो देता है तो डेटा को बनाए रखने के लिए, ऑफ़लाइन डेटा सक्षम करें दस्तावेज़ीकरण देखें।
तीव्र
import FirebaseCore import FirebaseFirestore
FirebaseApp.configure() let db = Firestore.firestore()
उद्देश्य सी
@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 Admin SDK का उपयोग करने के लिए, एक सेवा खाते का उपयोग करें।
IAM & admin > Google क्लाउड कंसोल में सेवा खातों पर जाएं। एक नई निजी कुंजी उत्पन्न करें और 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()पर प्रारंभ करें
एसडीके को आरंभ करने के लिए एक मौजूदा एप्लिकेशन डिफ़ॉल्ट क्रेडेंशियल का भी उपयोग किया जा सकता है।
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 Admin SDK का उपयोग करने के लिए, एक सेवा खाते का उपयोग करें।
IAM & admin > Google क्लाउड कंसोल में सेवा खातों पर जाएं। एक नई निजी कुंजी उत्पन्न करें और 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()पर प्रारंभ करें
एसडीके को आरंभ करने के लिए एक मौजूदा एप्लिकेशन डिफ़ॉल्ट क्रेडेंशियल का भी उपयोग किया जा सकता है।
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 Admin SDK का उपयोग करने के लिए, एक सेवा खाते का उपयोग करें।
IAM & admin > Google क्लाउड कंसोल में सेवा खातों पर जाएं। एक नई निजी कुंजी उत्पन्न करें और 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();
नोड.जेएस
Cloud Firestore SDK को आपके परिवेश के आधार पर अलग-अलग तरीकों से प्रारंभ किया जाता है। नीचे सबसे आम तरीके हैं। संपूर्ण संदर्भ के लिए, एडमिन SDK को इनिशियलाइज़ करें देखें।- क्लाउड फ़ंक्शंस
const { initializeApp, applicationDefault, cert } = require('firebase-admin/app'); const { getFirestore, Timestamp, FieldValue, Filter } = require('firebase-admin/firestore');
initializeApp(); const db = getFirestore();
पर आरंभ करें - Google क्लाउड
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 Admin SDK का उपयोग करने के लिए, सेवा खाते का उपयोग करें। IAM & admin > Google क्लाउड कंसोल में सेवा खातों पर जाएं। एक नई निजी कुंजी उत्पन्न करें और 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 Admin SDK का उपयोग करने के लिए, एक सेवा खाते का उपयोग करें।
IAM & admin > Google क्लाउड कंसोल में सेवा खातों पर जाएं। एक नई निजी कुंजी उत्पन्न करें और 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()
पीएचपी
पीएचपी
क्लाउड फायरस्टोर क्लाइंट स्थापित करने और बनाने के बारे में अधिक जानकारी के लिए, क्लाउड फायरस्टोर क्लाइंट लाइब्रेरी देखें।
एकता
using Firebase.Firestore; using Firebase.Extensions;
FirebaseFirestore db = FirebaseFirestore.DefaultInstance;
सी#
सी#
क्लाउड फायरस्टोर क्लाइंट स्थापित करने और बनाने के बारे में अधिक जानकारी के लिए, क्लाउड फायरस्टोर क्लाइंट लाइब्रेरी देखें।
माणिक
डेटा जोड़ें
क्लाउड फायरस्टोर डेटा को दस्तावेज़ों में संग्रहीत करता है, जो संग्रह में संग्रहीत होते हैं। जब आप पहली बार दस्तावेज़ में डेटा जोड़ते हैं, तो Cloud Firestore अप्रत्यक्ष रूप से संग्रह और दस्तावेज़ बनाता है। आपको स्पष्ट रूप से संग्रह या दस्तावेज़ बनाने की आवश्यकता नहीं है।
निम्न उदाहरण कोड का उपयोग करके एक नया संग्रह और एक दस्तावेज़ बनाएँ।
Web modular API
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 namespaced API
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 var ref: DocumentReference? = nil ref = db.collection("users").addDocument(data: [ "first": "Ada", "last": "Lovelace", "born": 1815 ]) { err in if let err = err { print("Error adding document: \(err)") } else { print("Document added with ID: \(ref!.documentID)") } }
उद्देश्य सी
// 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; } });
नोड.जेएस
जाना
पीएचपी
पीएचपी
क्लाउड फायरस्टोर क्लाइंट स्थापित करने और बनाने के बारे में अधिक जानकारी के लिए, क्लाउड फायरस्टोर क्लाइंट लाइब्रेरी देखें।
एकता
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 modular API
// 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 namespaced API
// 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. ref = db.collection("users").addDocument(data: [ "first": "Alan", "middle": "Mathison", "last": "Turing", "born": 1912 ]) { err in if let err = err { print("Error adding document: \(err)") } else { print("Document added with ID: \(ref!.documentID)") } }
उद्देश्य सी
// 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; } });
नोड.जेएस
जाना
पीएचपी
पीएचपी
क्लाउड फायरस्टोर क्लाइंट स्थापित करने और बनाने के बारे में अधिक जानकारी के लिए, क्लाउड फायरस्टोर क्लाइंट लाइब्रेरी देखें।
एकता
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 में डेटा जोड़ा है , फ़ायरबेस कंसोल में डेटा व्यूअर का उपयोग करें।
आप संपूर्ण संग्रह को पुनः प्राप्त करने के लिए "प्राप्त करें" विधि का भी उपयोग कर सकते हैं।
Web modular API
import { collection, getDocs } from "firebase/firestore"; const querySnapshot = await getDocs(collection(db, "users")); querySnapshot.forEach((doc) => { console.log(`${doc.id} => ${doc.data()}`); });
Web namespaced API
db.collection("users").get().then((querySnapshot) => { querySnapshot.forEach((doc) => { console.log(`${doc.id} => ${doc.data()}`); }); });
तीव्र
db.collection("users").getDocuments() { (querySnapshot, err) in if let err = err { print("Error getting documents: \(err)") } else { for document in querySnapshot!.documents { print("\(document.documentID) => \(document.data())") } } }
उद्देश्य सी
[[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; } });
नोड.जेएस
जाना
पीएचपी
पीएचपी
क्लाउड फायरस्टोर क्लाइंट स्थापित करने और बनाने के बारे में अधिक जानकारी के लिए, क्लाउड फायरस्टोर क्लाइंट लाइब्रेरी देखें।
एकता
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."); });
सी#
माणिक
अपना डेटा सुरक्षित करें
यदि आप वेब, Android, या Apple प्लेटफ़ॉर्म SDK का उपयोग कर रहे हैं, तो Cloud Firestore में अपने डेटा को सुरक्षित करने के लिए Firebase प्रमाणीकरण और Cloud Firestore सुरक्षा नियमों का उपयोग करें।
यहां कुछ बुनियादी नियम सेट दिए गए हैं जिनका उपयोग आप आरंभ करने के लिए कर सकते हैं। आप कंसोल के नियम टैब में अपने सुरक्षा नियमों को संशोधित कर सकते हैं।
प्रमाणीकरण आवश्यक है
// Allow read/write access on all documents to any user signed in to the application
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.auth != null;
}
}
}
लॉक मोड
// Deny read/write access to all users under any conditions
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if false;
}
}
}
परीक्षण मोड
// Allow read/write access to all users under any conditions
// Warning: **NEVER** use this rule set in production; it allows
// anyone to overwrite your entire database.
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if true;
}
}
}
इससे पहले कि आप अपने वेब, Android, या iOS ऐप को प्रोडक्शन में तैनात करें, यह भी सुनिश्चित करने के लिए कदम उठाएं कि केवल आपके ऐप क्लाइंट ही आपके क्लाउड फायरस्टोर डेटा तक पहुंच सकें। ऐप चेक दस्तावेज़ देखें।
यदि आप किसी एक सर्वर SDK का उपयोग कर रहे हैं, तो Cloud Firestore में अपने डेटा को सुरक्षित करने के लिए आइडेंटिटी एंड एक्सेस मैनेजमेंट (IAM) का उपयोग करें।
एक वीडियो ट्यूटोरियल देखें
क्लाउड फायरस्टार मोबाइल क्लाइंट लाइब्रेरी के साथ आरंभ करने के बारे में विस्तृत मार्गदर्शन के लिए, निम्नलिखित वीडियो ट्यूटोरियल में से एक देखें:
वेब
आईओएस+
एंड्रॉयड
आप Firebase YouTube चैनल में अधिक वीडियो प्राप्त कर सकते हैं।
अगले कदम
निम्नलिखित विषयों के साथ अपने ज्ञान को गहरा करें:
- कोडलैब्स - Android , iOS , या वेब के लिए कोडलैब का पालन करके एक वास्तविक ऐप में क्लाउड फायरस्टोर का उपयोग करना सीखें।
- डेटा मॉडल - पदानुक्रमित डेटा और उप-संग्रह सहित क्लाउड फायरस्टोर में डेटा को कैसे संरचित किया जाता है, इसके बारे में अधिक जानें।
- डेटा जोड़ें — क्लाउड फायरस्टोर में डेटा बनाने और अपडेट करने के बारे में और जानें।
- डेटा प्राप्त करें — डेटा पुनर्प्राप्त करने के तरीके के बारे में अधिक जानें.
- सरल और यौगिक प्रश्न करें - सरल और मिश्रित प्रश्नों को चलाना सीखें।
- आदेश और प्रश्नों को सीमित करें अपने प्रश्नों द्वारा लौटाए गए डेटा को ऑर्डर और सीमित करने का तरीका जानें।