Google is committed to advancing racial equity for Black communities. See how.
This page was translated by the Cloud Translation API.
Switch to English

ক্লাউড ফায়ার স্টোর দিয়ে শুরু করুন

এই কুইকস্টার্টটি আপনাকে কীভাবে ক্লাউড ফায়ার স্টোর সেট আপ করতে হবে, ডেটা যুক্ত করতে হবে, তারপরে ফায়ারবেস কনসোলে আপনি যে ডেটা সবে যুক্ত করেছেন তা দেখুন।

ক্লাউড ফায়ার স্টোর ডাটাবেস তৈরি করুন

  1. যদি আপনার ইতিমধ্যে না থাকে তবে ফায়ারবেস প্রকল্পটি তৈরি করুন: ফায়ারবেস কনসোলে , প্রকল্প যুক্ত করুন ক্লিক করুন , তারপরে একটি ফায়ারবেস প্রকল্প তৈরি করতে বা একটি বিদ্যমান জিসিপি প্রকল্পে ফায়ারবেস পরিষেবা যুক্ত করার জন্য অন-স্ক্রীন নির্দেশাবলী অনুসরণ করুন।

  2. ফায়ারবেস কনসোলের ক্লাউড ফায়ারস্টোর বিভাগে নেভিগেট করুন। আপনাকে একটি বিদ্যমান ফায়ারবেস প্রকল্প নির্বাচন করতে অনুরোধ করা হবে। ডাটাবেস তৈরি ওয়ার্কফ্লো অনুসরণ করুন।

  3. আপনার ক্লাউড ফায়ারস্টোর সুরক্ষা বিধিগুলির জন্য একটি সূচনা মোড নির্বাচন করুন:

    পরীক্ষা মোড

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

    ওয়েব, আইওএস বা অ্যান্ড্রয়েড এসডিকে দিয়ে শুরু করতে পরীক্ষা মোডটি নির্বাচন করুন।

    লকড মোড

    মোবাইল এবং ওয়েব ক্লায়েন্টদের থেকে সমস্ত পড়া এবং লেখাকে অস্বীকার করে। আপনার অনুমোদনপ্রাপ্ত অ্যাপ্লিকেশন সার্ভারগুলি (সি #, গো, জাভা, নোড.জেএস, পিএইচপি, পাইথন বা রুবি) এখনও আপনার ডাটাবেস অ্যাক্সেস করতে পারে।

    সি #, গো, জাভা, নোড.জেএস, পিএইচপি, পাইথন বা রুবি সার্ভার ক্লায়েন্ট লাইব্রেরি দিয়ে শুরু করতে, লক মোডটি নির্বাচন করুন।

  4. আপনার ডাটাবেসের জন্য একটি অবস্থান নির্বাচন করুন।

    • এই অবস্থান সেটিংটি আপনার প্রকল্পের ডিফল্ট গুগল ক্লাউড প্ল্যাটফর্ম (জিসিপি) রিসোর্সের অবস্থান । নোট করুন যে এই অবস্থানটি আপনার প্রকল্পের জিসিপি পরিষেবাদির জন্য ব্যবহার করা হবে যার জন্য একটি অবস্থানের সেটিং প্রয়োজন, বিশেষত, আপনার ডিফল্ট ক্লাউড স্টোরেজ বালতি এবং আপনার অ্যাপ ইঞ্জিন অ্যাপ্লিকেশন (যা আপনি ক্লাউড শিডিয়ুলার ব্যবহার করলে প্রয়োজনীয়)।

    • আপনি যদি কোনও অবস্থান নির্বাচন করতে সক্ষম না হন তবে আপনার প্রকল্পের ইতিমধ্যে একটি ডিফল্ট জিসিপি রিসোর্স অবস্থান রয়েছে। এটি হয় প্রকল্প তৈরির সময় বা অন্য কোনও পরিষেবা সেট আপ করার সময় সেট করা হয়েছিল যার জন্য কোনও অবস্থান সেটিং প্রয়োজন।

  5. সম্পন্ন ক্লিক করুন।

আপনি যখন ক্লাউড ফায়ার স্টোর সক্ষম করেন, এটি ক্লাউড এপিআই ম্যানেজারে এপিআই সক্ষম করে।

আপনার বিকাশের পরিবেশ স্থাপন করুন

আপনার অ্যাপ্লিকেশনটিতে প্রয়োজনীয় নির্ভরতা এবং ক্লায়েন্ট লাইব্রেরি যুক্ত করুন।

ওয়েব
  1. আপনার ওয়েব অ্যাপ্লায় ফায়ারবেস যুক্ত করার জন্য নির্দেশাবলী অনুসরণ করুন
  2. আপনার অ্যাপটিতে ফায়ারবেস এবং ক্লাউড ফায়ারস্টোর লাইব্রেরি যুক্ত করুন:
    <script src="https://www.gstatic.com/firebasejs/7.21.1/firebase-app.js"></script>
    <script src="https://www.gstatic.com/firebasejs/7.21.1/firebase-firestore.js"></script>
    ক্লাউড ফায়ারস্টোর এসডিকে এনপিএম প্যাকেজ হিসাবেও উপলব্ধ।
    npm install firebase@7.21.1 --save
    
    আপনার ম্যানুয়ালি ফায়ারবেস এবং ক্লাউড ফায়ার স্টোর উভয়ের প্রয়োজন।
    const firebase = require("firebase");
    // Required for side-effects
    require("firebase/firestore");
    
আইওএস
  1. আপনার আইওএস অ্যাপে ফায়ারবেস যুক্ত করার জন্য নির্দেশাবলী অনুসরণ করুন
  2. আপনার Podfile
    pod 'Firebase/Firestore'
    
    # Optionally, include the Swift extensions if you're using Swift.
    pod 'FirebaseFirestoreSwift'
    
    এ ক্লাউড ফায়ারস্টোর পোড যুক্ত করুন
  3. ফাইলটি সংরক্ষণ করুন এবং pod install চালান।

জাভা

  1. আপনার অ্যান্ড্রয়েড অ্যাপে ফায়ারবেস যুক্ত করার জন্য নির্দেশাবলী অনুসরণ করুন
  2. আপনার প্রকল্প-স্তরের build.gradle ফাইলটিতে আপনার buildscript এবং allprojects উভয় বিভাগে allprojects buildscript সংগ্রহস্থল অন্তর্ভুক্ত করার বিষয়টি নিশ্চিত করুন।
  3. ক্লাউড ফায়ারস্টোর অ্যান্ড্রয়েড লাইব্রেরিটিকে আপনার মডিউলটিতে (অ্যাপ্লিকেশন-স্তরের) গ্রেডল ফাইল (সাধারণত app/build.gradle ) যুক্ত করুন:
    implementation 'com.google.firebase:firebase-firestore:21.6.0'

কোটলিন + কেটিএক্স

  1. আপনার অ্যান্ড্রয়েড অ্যাপে ফায়ারবেস যুক্ত করার জন্য নির্দেশাবলী অনুসরণ করুন
  2. আপনার প্রকল্প-স্তরের build.gradle ফাইলটিতে আপনার buildscript এবং allprojects উভয় বিভাগে allprojects buildscript সংগ্রহস্থল অন্তর্ভুক্ত করার বিষয়টি নিশ্চিত করুন।
  3. ক্লাউড ফায়ারস্টোর অ্যান্ড্রয়েড লাইব্রেরিটিকে আপনার মডিউলটিতে (অ্যাপ্লিকেশন-স্তর) গ্রেডল ফাইল (সাধারণত app/build.gradle ) যুক্ত করুন:
    implementation 'com.google.firebase:firebase-firestore-ktx:21.6.0'
জাভা
  1. আপনার অ্যাপে ফায়ারবেস অ্যাডমিন এসডিকে যুক্ত করুন:
    • গ্রেডল ব্যবহার করে:
      compile 'com.google.firebase:firebase-admin:7.0.0'
      
    • ম্যাভেন ব্যবহার:
      <dependency>
        <groupId>com.google.firebase</groupId>
        <artifactId>firebase-admin</artifactId>
        <version>7.0.0</version>
      </dependency>
           
  2. আপনার পরিবেশে যথাযথ শংসাপত্রগুলির সাথে ক্লাউড ফায়ারস্টোর শুরু করতে নীচের নির্দেশিকাগুলি অনুসরণ করুন।
পাইথন
  1. আপনার পাইথন অ্যাপ্লিকেশনটিতে ফায়ারবেস অ্যাডমিন এসডিকে যুক্ত করুন:
    pip install --upgrade firebase-admin
  2. আপনার পরিবেশে যথাযথ শংসাপত্রগুলির সাথে ক্লাউড ফায়ারস্টোর শুরু করতে নীচের নির্দেশিকাগুলি অনুসরণ করুন।
সি ++
  1. আপনার সি ++ প্রকল্পে ফায়ারবেস যুক্ত করার জন্য নির্দেশাবলী অনুসরণ করুন।
  2. অ্যান্ড্রয়েডের জন্য সি ++ ইন্টারফেস।
    • গ্রেডল নির্ভরতা। আপনার মডিউলটিতে (অ্যাপ্লিকেশন-স্তরের) গ্রেডল ফাইল (সাধারণত 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 আপনার 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}")
              
  3. ডেস্কটপ ইন্টিগ্রেশন সেট আপ করতে, আপনার সি ++ প্রকল্পে ফায়ারবেস যুক্ত করুন
.ক্য
  1. আপনার ইউনিটি প্রকল্পে ফায়ারবেস যুক্ত করার জন্য নির্দেশাবলী অনুসরণ করুন
  2. অ্যান্ড্রয়েডের জন্য ityক্য ইন্টারফেস।
  3. অ্যান্ড্রয়েডের জন্য বিল্ডিং করার সময়, অ্যান্ড্রয়েড ডেক্স সীমা এড়াতে প্রোগর্ডিং সক্ষম করুন। এটি করার জন্য, ইউনিটির সম্পাদক:

    1. ফাইল> বিল্ড সেটিংস নির্বাচন করুন
    2. 'প্ল্যাটফর্ম' কে 'অ্যান্ড্রয়েড' এ স্যুইচ করুন এবং 'প্ল্যাটফর্ম স্যুইচ করুন' ক্লিক করুন
    3. 'প্লেয়ার সেটিংস…' ক্লিক করুন
    4. প্রধান Unক্য ইউআইতে, 'অ্যান্ড্রয়েডের জন্য সেটিংস' এর অধীনে, 'প্রকাশনা সেটিংস' নির্বাচন করুন
    5. 'মিনিফাই' বিভাগের অধীনে, রিলিজ এবং ডিবাগ সেটিংস উভয়ই 'না' থেকে 'প্রোগুয়ার্ড' এ পরিবর্তন করুন
নোড.জেএস
  1. ফায়ারবেস অ্যাডমিন এসডিকে আপনার অ্যাপে যুক্ত করুন:
    npm install firebase-admin --save
  2. আপনার পরিবেশে যথাযথ শংসাপত্রগুলির সাথে ক্লাউড ফায়ারস্টোর শুরু করতে নীচের নির্দেশিকাগুলি অনুসরণ করুন।
যাওয়া
  1. ফায়ারবেস অ্যাডমিন এসডিকে আপনার গো অ্যাপটিতে যুক্ত করুন:
    go get firebase.google.com/go
    
  2. আপনার পরিবেশে যথাযথ শংসাপত্রগুলির সাথে ক্লাউড ফায়ারস্টোর শুরু করতে নীচের নির্দেশিকাগুলি অনুসরণ করুন।
পিএইচপি
  1. ক্লাউড ফায়ারস্টোর সার্ভার ক্লায়েন্ট লাইব্রেরি (জাভা, নোড.জেএস, পাইথন, গো, পিএইচপি, সি # এবং রুবি) প্রমাণীকরণের জন্য গুগল অ্যাপ্লিকেশন ডিফল্ট শংসাপত্রগুলি ব্যবহার করে।
    • আপনার বিকাশ পরিবেশ থেকে প্রমাণীকরণ করতে, একটি JSON পরিষেবা অ্যাকাউন্ট কী ফাইলের দিকে নির্দেশ করতে GOOGLE_APPLICATION_CREDENTIALS পরিবেশের পরিবর্তনশীল সেট করুন। আপনি API কনসোল শংসাপত্রের পৃষ্ঠাতে একটি কী ফাইল তৈরি করতে পারেন।
      export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
    • আপনার উত্পাদনের পরিবেশে, আপনি যদি ক্লাউড ফায়ার স্টোরের জন্য ব্যবহার করেন একই প্রকল্পটি ব্যবহার করে অ্যাপ্লিকেশন ইঞ্জিন বা কম্পিউট ইঞ্জিনে আপনার অ্যাপ্লিকেশনটি চালিত করেন তবে আপনাকে প্রমাণীকরণের প্রয়োজন হবে না। অন্যথায়, একটি পরিষেবা অ্যাকাউন্ট সেট আপ করুন
  2. পিএইচপি-র জন্য জিআরপিসি এক্সটেনশন ইনস্টল করুন এবং সক্ষম করুন, যা আপনাকে ক্লায়েন্ট লাইব্রেরি ব্যবহার করতে হবে।
  3. আপনার অ্যাপ্লিকেশনটিতে ক্লাউড ফায়ারস্টোর পিএইচপি লাইব্রেরি যুক্ত করুন:
    composer require google/cloud-firestore
সি #
  1. ক্লাউড ফায়ার স্টোর ক্লায়েন্ট লাইব্রেরি (জাভা, নোড.জেএস, পাইথন, গো, পিএইচপি, সি # এবং রুবি) প্রমাণীকরণের জন্য গুগল অ্যাপ্লিকেশন ডিফল্ট শংসাপত্রগুলি ব্যবহার করে।
    • আপনার বিকাশ পরিবেশ থেকে প্রমাণীকরণ করতে, একটি JSON পরিষেবা অ্যাকাউন্ট কী ফাইলের দিকে নির্দেশ করতে GOOGLE_APPLICATION_CREDENTIALS পরিবেশের পরিবর্তনশীল সেট করুন। আপনি API কনসোল শংসাপত্রের পৃষ্ঠাতে একটি কী ফাইল তৈরি করতে পারেন।
      export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
    • আপনার উত্পাদনের পরিবেশে, আপনি যদি ক্লাউড ফায়ার স্টোরের জন্য ব্যবহার করেন একই প্রকল্পটি ব্যবহার করে অ্যাপ্লিকেশন ইঞ্জিন বা কম্পিউট ইঞ্জিনে আপনার অ্যাপ্লিকেশনটি চালিত করেন তবে আপনাকে প্রমাণীকরণের প্রয়োজন হবে না। অন্যথায়, একটি পরিষেবা অ্যাকাউন্ট সেট আপ করুন
  2. আপনার .csproj ফাইলে আপনার অ্যাপ্লিকেশনটিতে ক্লাউড ফায়ারস্টোর সি # লাইব্রেরি .csproj করুন:
    <ItemGroup>
      <PackageReference Include="Google.Cloud.Firestore" Version="1.1.0-beta01" />
    </ItemGroup>
  3. আপনার টু নিম্নলিখিত যোগ Program.cs ফাইল:
    using Google.Cloud.Firestore;
রুবি
  1. ক্লাউড ফায়ার স্টোর ক্লায়েন্ট লাইব্রেরি (জাভা, নোড.জেএস, পাইথন, গো, পিএইচপি, সি # এবং রুবি) প্রমাণীকরণের জন্য গুগল অ্যাপ্লিকেশন ডিফল্ট শংসাপত্রগুলি ব্যবহার করে।
    • আপনার বিকাশ পরিবেশ থেকে প্রমাণীকরণ করতে, একটি JSON পরিষেবা অ্যাকাউন্ট কী ফাইলটিতে নির্দেশ করতে GOOGLE_APPLICATION_CREDENTIALS পরিবেশের পরিবর্তনশীল সেট করুন। আপনি API কনসোল শংসাপত্রের পৃষ্ঠাতে একটি কী ফাইল তৈরি করতে পারেন।
      export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
    • আপনার উত্পাদনের পরিবেশে, আপনি যদি ক্লাউড ফায়ার স্টোরের জন্য ব্যবহার করেন একই প্রকল্পটি ব্যবহার করে অ্যাপ্লিকেশন ইঞ্জিন বা কম্পিউট ইঞ্জিনে আপনার অ্যাপ্লিকেশনটি চালিত করেন তবে আপনাকে প্রমাণীকরণের প্রয়োজন হবে না। অন্যথায়, একটি পরিষেবা অ্যাকাউন্ট সেট আপ করুন
  2. আপনার Gemfile ক্লাউড ফায়ারস্টোর রুবি লাইব্রেরি Gemfile :
    gem "google-cloud-firestore"
  3. আপনার Gemfile থেকে নির্ভরতা ইনস্টল করুন:
    bundle install

ক্লাউড ফায়ার স্টোর শুরু করুন

ক্লাউড ফায়ার স্টোরের একটি উদাহরণ শুরু করুন:

ওয়েব
// Initialize Cloud Firestore through Firebase
firebase.initializeApp({
  apiKey: '### FIREBASE API KEY ###',
  authDomain: '### FIREBASE AUTH DOMAIN ###',
  projectId: '### CLOUD FIRESTORE PROJECT ID ###'
});

var db = firebase.firestore();
আপনার ওয়েব অ্যাপ্লিকেশনটির `ফায়ারবেস কনফিগ`-এ` প্রাথমিককরণ অ্যাপ্লিকেশনটির মানগুলি পাওয়া যাবে ` ডিভাইসটির সংযোগ হারালে ডেটা ধরে রাখতে, অফলাইন ডেটা ডকুমেন্টেশন সক্ষম করুন দেখুন।
সুইফট
import Firebase

FirebaseApp.configure()

let db = Firestore.firestore()
উদ্দেশ্য গ
050bdc696 বি

জাভা

// Access a Cloud Firestore instance from your Activity
FirebaseFirestore db = FirebaseFirestore.getInstance();

কোটলিন + কেটিএক্স

// Access a Cloud Firestore instance from your Activity
val db = Firebase.firestore
জাভা
ক্লাউড ফায়ারস্টোর এসডিকে আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়েছে। নীচে সবচেয়ে সাধারণ পদ্ধতি রয়েছে। সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন এসডিকে শুরু করুন দেখুন।
  • গুগল ক্লাউড প্ল্যাটফর্ম
    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();
    
    শুরু করুন
  • আপনার নিজের সার্ভারে আরম্ভ করুন

    নিজের সার্ভারে ফায়ারবেস অ্যাডমিন এসডিকে ব্যবহার করতে একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন।

    ক্লাউড প্ল্যাটফর্ম কনসোলের আইএএম এবং প্রশাসক> পরিষেবা অ্যাকাউন্টগুলিতে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন। তারপরে এসডিকে আরম্ভ করার জন্য ফাইলটি ব্যবহার করুন:

    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();
    
  • পাইথন
    ক্লাউড ফায়ারস্টোর এসডিকে আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়েছে। নীচে সবচেয়ে সাধারণ পদ্ধতি রয়েছে। সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন এসডিকে শুরু করুন দেখুন।
  • গুগল ক্লাউড প্ল্যাটফর্ম
    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, {
      'projectId': project_id,
    })
    
    db = firestore.client()
    
    শুরু করুন
  • আপনার নিজের সার্ভারে আরম্ভ করুন

    নিজের সার্ভারে ফায়ারবেস অ্যাডমিন এসডিকে ব্যবহার করতে একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন।

    ক্লাউড প্ল্যাটফর্ম কনসোলের আইএএম এবং প্রশাসক> পরিষেবা অ্যাকাউন্টগুলিতে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন। তারপরে এসডিকে আরম্ভ করার জন্য ফাইলটি ব্যবহার করুন:

    import firebase_admin
    from firebase_admin import credentials
    from firebase_admin import firestore
    
    # Use a service account
    cred = credentials.Certificate('path/to/serviceAccount.json')
    firebase_admin.initialize_app(cred)
    
    db = firestore.client()
    
  • সি ++
    // Make sure the call to `Create()` happens some time before you call Firestore::GetInstance().
    App::Create();
    Firestore* db = Firestore::GetInstance();
    
    নোড.জেএস
    ক্লাউড ফায়ারস্টোর এসডিকে আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়েছে। নীচে সবচেয়ে সাধারণ পদ্ধতি রয়েছে। সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন এসডিকে শুরু করুন দেখুন।
    • ক্লাউড ফাংশনগুলি
      const admin = require('firebase-admin');
      admin.initializeApp();
      
      const db = admin.firestore();
      
      
      থেকে শুরু করুন
    • গুগল ক্লাউড প্ল্যাটফর্ম
      const admin = require('firebase-admin');
      
      admin.initializeApp({
        credential: admin.credential.applicationDefault()
      });
      
      const db = admin.firestore();
      
      শুরু করুন
    • আপনার নিজের সার্ভারে আরম্ভ করুন

      আপনার নিজস্ব সার্ভারে (বা অন্য কোনও নোড.জেএস পরিবেশ) ফায়ারবেস অ্যাডমিন এসডিকে ব্যবহার করতে একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন। ক্লাউড প্ল্যাটফর্ম কনসোলের আইএএম এবং প্রশাসক> পরিষেবা অ্যাকাউন্টগুলিতে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন। তারপরে এসডিকে আরম্ভ করার জন্য ফাইলটি ব্যবহার করুন:

      const admin = require('firebase-admin');
      
      const serviceAccount = require('./path/to/serviceAccountKey.json');
      
      admin.initializeApp({
        credential: admin.credential.cert(serviceAccount)
      });
      
      const db = admin.firestore();
      
      
    যাওয়া
    ক্লাউড ফায়ারস্টোর এসডিকে আপনার পরিবেশের উপর নির্ভর করে বিভিন্ন উপায়ে শুরু করা হয়েছে। নীচে সবচেয়ে সাধারণ পদ্ধতি রয়েছে। সম্পূর্ণ রেফারেন্সের জন্য, অ্যাডমিন এসডিকে শুরু করুন দেখুন।
  • গুগল ক্লাউড প্ল্যাটফর্ম
    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()
    
    শুরু করুন
  • আপনার নিজের সার্ভারে আরম্ভ করুন

    নিজের সার্ভারে ফায়ারবেস অ্যাডমিন এসডিকে ব্যবহার করতে একটি পরিষেবা অ্যাকাউন্ট ব্যবহার করুন।

    ক্লাউড প্ল্যাটফর্ম কনসোলের আইএএম এবং প্রশাসক> পরিষেবা অ্যাকাউন্টগুলিতে যান। একটি নতুন ব্যক্তিগত কী তৈরি করুন এবং JSON ফাইলটি সংরক্ষণ করুন। তারপরে এসডিকে আরম্ভ করার জন্য ফাইলটি ব্যবহার করুন:

    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()
    
  • পিএইচপি
    use Google\Cloud\Firestore\FirestoreClient;
    
    /**
     * Initialize Cloud Firestore with default project ID.
     * ```
     * initialize();
     * ```
     */
    function initialize()
    {
        // Create the Cloud Firestore client
        $db = new FirestoreClient();
        printf('Created Cloud Firestore client with default project ID.' . PHP_EOL);
    }
    
    .ক্য
    using Firebase.Firestore;
    using Firebase.Extensions;
    FirebaseFirestore db = FirebaseFirestore.DefaultInstance;
    
    সি #
    FirestoreDb db = FirestoreDb.Create(project);
    Console.WriteLine("Created Cloud Firestore client with project ID: {0}", project);
    
    রুবি
    require "google/cloud/firestore"
    
    firestore = Google::Cloud::Firestore.new project_id: project_id
    
    puts "Created Cloud Firestore client with given project ID."
    

    ডেটা যুক্ত করুন

    ক্লাউড ফায়ার স্টোর ডকুমেন্টগুলিতে ডেটা সঞ্চয় করে, যা সংগ্রহে সঞ্চিত থাকে। ক্লাউড ফায়ার স্টোর আপনি প্রথম বার যখন নথিতে ডেটা যুক্ত করেন নিখুঁতভাবে সংগ্রহ এবং নথি তৈরি করে। আপনার স্পষ্টভাবে সংগ্রহ বা দস্তাবেজ তৈরি করার দরকার নেই।

    নিম্নলিখিত উদাহরণ কোডটি ব্যবহার করে একটি নতুন সংগ্রহ এবং একটি নথি তৈরি করুন।

    ওয়েব
    db.collection("users").add({
        first: "Ada",
        last: "Lovelace",
        born: 1815
    })
    .then(function(docRef) {
        console.log("Document written with ID: ", docRef.id);
    })
    .catch(function(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);
          }
        }];
      

    জাভা

    // 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);
                }
            });
    

    কোটলিন + কেটিএক্স

    // 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)
        }
    
    জাভা
    DocumentReference docRef = db.collection("users").document("alovelace");
    // Add document data  with id "alovelace" using a hashmap
    Map<String, Object> data = new HashMap<>();
    data.put("first", "Ada");
    data.put("last", "Lovelace");
    data.put("born", 1815);
    //asynchronously write data
    ApiFuture<WriteResult> result = docRef.set(data);
    // ...
    // result.get() blocks on response
    System.out.println("Update time : " + result.get().getUpdateTime());
      
    পাইথন
    163121f03 বি
    সি ++
    // 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()
                  << '\n';
      } else {
        std::cout << "Error adding document: " << future.error_message() << '\n';
      }
    });
      
    নোড.জেএস
    const docRef = db.collection('users').doc('alovelace');
    
    await docRef.set({
      first: 'Ada',
      last: 'Lovelace',
      born: 1815
    });
      
    যাওয়া
    _, _, err := client.Collection("users").Add(ctx, map[string]interface{}{
    	"first": "Ada",
    	"last":  "Lovelace",
    	"born":  1815,
    })
    if err != nil {
    	log.Fatalf("Failed adding alovelace: %v", err)
    }
      
    পিএইচপি
    $docRef = $db->collection('users')->document('lovelace');
    $docRef->set([
        'first' => 'Ada',
        'last' => 'Lovelace',
        'born' => 1815
    ]);
    printf('Added data to the lovelace document in the users collection.' . PHP_EOL);
      
    .ক্য
    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.");
    });
      
    সি #
    DocumentReference docRef = db.Collection("users").Document("alovelace");
    Dictionary<string, object> user = new Dictionary<string, object>
    {
        { "First", "Ada" },
        { "Last", "Lovelace" },
        { "Born", 1815 }
    };
    await docRef.SetAsync(user);
      
    রুবি
    doc_ref = firestore.doc "users/alovelace"
    
    doc_ref.set(
      first: "Ada",
      last:  "Lovelace",
      born:  1815
    )
    
    puts "Added data to the alovelace document in the users collection."
      

    এখন users সংগ্রহে অন্য একটি দস্তাবেজ যুক্ত করুন। লক্ষ্য করুন যে এই নথিতে একটি মূল-মান জুটি (মাঝের নাম) রয়েছে যা প্রথম নথিতে উপস্থিত হয় না। কোনও সংগ্রহের নথিতে তথ্যের বিভিন্ন সেট থাকতে পারে।

    ওয়েব
    // Add a second document with a generated ID.
    db.collection("users").add({
        first: "Alan",
        middle: "Mathison",
        last: "Turing",
        born: 1912
    })
    .then(function(docRef) {
        console.log("Document written with ID: ", docRef.id);
    })
    .catch(function(error) {
        console.error("Error adding document: ", error);
    });
    
    সুইফট
    7da5ae717 বি
    উদ্দেশ্য গ
    // 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);
          }
        }];
      

    জাভা

    // 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);
                }
            });
    

    কোটলিন + কেটিএক্স

    // 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)
        }
    
    জাভা
    DocumentReference docRef = db.collection("users").document("aturing");
    // Add document data with an additional field ("middle")
    Map<String, Object> data = new HashMap<>();
    data.put("first", "Alan");
    data.put("middle", "Mathison");
    data.put("last", "Turing");
    data.put("born", 1912);
    
    ApiFuture<WriteResult> result = docRef.set(data);
    System.out.println("Update time : " + result.get().getUpdateTime());
      
    পাইথন
    doc_ref = db.collection(u'users').document(u'aturing')
    doc_ref.set({
        u'first': u'Alan',
        u'middle': u'Mathison',
        u'last': u'Turing',
        u'born': 1912
    })
      
    সি ++
    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() << '\n';
          } else {
            std::cout << "Error adding document: " << future.error_message()
                      << '\n';
          }
        });
      
    নোড.জেএস
    const aTuringRef = db.collection('users').doc('aturing');
    
    await aTuringRef.set({
      'first': 'Alan',
      'middle': 'Mathison',
      'last': 'Turing',
      'born': 1912
    });
      
    যাওয়া
    _, _, err = client.Collection("users").Add(ctx, map[string]interface{}{
    	"first":  "Alan",
    	"middle": "Mathison",
    	"last":   "Turing",
    	"born":   1912,
    })
    if err != nil {
    	log.Fatalf("Failed adding aturing: %v", err)
    }
      
    পিএইচপি
    $docRef = $db->collection('users')->document('aturing');
    $docRef->set([
        'first' => 'Alan',
        'middle' => 'Mathison',
        'last' => 'Turing',
        'born' => 1912
    ]);
    printf('Added data to the aturing document in the users collection.' . PHP_EOL);
      
    .ক্য
    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.");
    });
      
    সি #
    DocumentReference docRef = db.Collection("users").Document("aturing");
    Dictionary<string, object> user = new Dictionary<string, object>
    {
        { "First", "Alan" },
        { "Middle", "Mathison" },
        { "Last", "Turing" },
        { "Born", 1912 }
    };
    await docRef.SetAsync(user);
      
    রুবি
    doc_ref = firestore.doc "users/aturing"
    
    doc_ref.set(
      first:  "Alan",
      middle: "Mathison",
      last:   "Turing",
      born:   1912
    )
    
    puts "Added data to the aturing document in the users collection."
      

    তথ্য পড়ুন

    আপনি ক্লাউড ফায়ার স্টোরে ডেটা যুক্ত করেছেন তা দ্রুত যাচাই করতে, ফায়ারবেস কনসোলে ডেটা ভিউয়ারটি ব্যবহার করুন।

    পুরো সংগ্রহটি পুনরুদ্ধার করতে আপনি "get" পদ্ধতিটিও ব্যবহার করতে পারেন।

    ওয়েব
    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);
            }
          }
        }];
      

    জাভা

    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());
                    }
                }
            });
    

    কোটলিন + কেটিএক্স

    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)
            }
    
    জাভা
    // asynchronously retrieve all users
    ApiFuture<QuerySnapshot> query = db.collection("users").get();
    // ...
    // query.get() blocks on response
    QuerySnapshot querySnapshot = query.get();
    List<QueryDocumentSnapshot> documents = querySnapshot.getDocuments();
    for (QueryDocumentSnapshot document : documents) {
      System.out.println("User: " + document.getId());
      System.out.println("First: " + document.getString("first"));
      if (document.contains("middle")) {
        System.out.println("Middle: " + document.getString("middle"));
      }
      System.out.println("Last: " + document.getString("last"));
      System.out.println("Born: " + document.getLong("born"));
    }
      
    পাইথন
    users_ref = db.collection(u'users')
    docs = users_ref.stream()
    
    for doc in docs:
        print(f'{doc.id} => {doc.to_dict()}')
      
    সি ++
    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 << '\n';
        }
      } else {
        std::cout << "Error getting documents: " << future.error_message()
                  << '\n';
      }
    });
      
    নোড.জেএস
    const snapshot = await db.collection('users').get();
    snapshot.forEach((doc) => {
      console.log(doc.id, '=>', doc.data());
    });
      
    যাওয়া
    বিসি 44 ডি 4699 ই
    পিএইচপি
    $usersRef = $db->collection('users');
    $snapshot = $usersRef->documents();
    foreach ($snapshot as $user) {
        printf('User: %s' . PHP_EOL, $user->id());
        printf('First: %s' . PHP_EOL, $user['first']);
        if (!empty($user['middle'])) {
            printf('Middle: %s' . PHP_EOL, $user['middle']);
        }
        printf('Last: %s' . PHP_EOL, $user['last']);
        printf('Born: %d' . PHP_EOL, $user['born']);
        printf(PHP_EOL);
    }
    printf('Retrieved and printed out all documents from the users collection.' . PHP_EOL);
      
    .ক্য
    53 বি 28 বি 86 এফ
    সি #
    CollectionReference usersRef = db.Collection("users");
    QuerySnapshot snapshot = await usersRef.GetSnapshotAsync();
    foreach (DocumentSnapshot document in snapshot.Documents)
    {
        Console.WriteLine("User: {0}", document.Id);
        Dictionary<string, object> documentDictionary = document.ToDictionary();
        Console.WriteLine("First: {0}", documentDictionary["First"]);
        if (documentDictionary.ContainsKey("Middle"))
        {
            Console.WriteLine("Middle: {0}", documentDictionary["Middle"]);
        }
        Console.WriteLine("Last: {0}", documentDictionary["Last"]);
        Console.WriteLine("Born: {0}", documentDictionary["Born"]);
        Console.WriteLine();
    }
      
    রুবি
    users_ref = firestore.col "users"
    users_ref.get do |user|
      puts "#{user.document_id} data: #{user.data}."
    end
      

    আপনার ডেটা সুরক্ষিত করুন

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

    এখানে কিছু প্রাথমিক নিয়ম সেট রয়েছে যা আপনি শুরু করতে ব্যবহার করতে পারেন। আপনি কনসোলের নিয়ম ট্যাবে আপনার সুরক্ষা বিধিগুলি পরিবর্তন করতে পারেন।

    প্রমাণ দরকার

    // 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;
        }
      }
    }
    

    আপনি যদি একটি সার্ভার এসডিকে ব্যবহার করেন তবে ক্লাউড ফায়ার স্টোরে আপনার ডেটা সুরক্ষিত করতে পরিচয় এবং অ্যাক্সেস ম্যানেজমেন্ট (আইএএম) ব্যবহার করুন।

    একটি ভিডিও টিউটোরিয়াল দেখুন

    ক্লাউড ফায়ারস্টোর মোবাইল এবং ওয়েব ক্লায়েন্ট লাইব্রেরি দিয়ে শুরু করার বিষয়ে বিস্তারিত দিকনির্দেশের জন্য, নীচের একটি ভিডিও টিউটোরিয়াল দেখুন:

    ওয়েব
    আইওএস
    অ্যান্ড্রয়েড

    আপনি ফায়ারবেস ইউটিউব চ্যানেলে আরও ভিডিও পেতে পারেন।

    পরবর্তী পদক্ষেপ

    নিম্নলিখিত বিষয়গুলি সহ আপনার জ্ঞানকে আরও গভীর করুন: