این شروع سریع به شما نشان میدهد که چگونه نسخه Firestore Enterprise را راهاندازی کنید، داده اضافه کنید، سپس دادههایی را که بهتازگی اضافه کردهاید در کنسول Firebase بااستفاده از کتابخانههای کارخواه سرور برای C#، Go، Java، Node.js، PHP، Python، و Ruby مشاهده کنید.
از این کتابخانههای کارخواه برای راهاندازی محیطهای سرور ممتاز با دسترسی کامل به پایگاه دادهتان استفاده کنید.
ایجاد پایگاه داده Cloud Firestore
اگر قبلاً این کار را نکردهاید، پروژه Firebase ایجاد کنید: در کنسول Firebase، روی افزودن پروژه کلیک کنید، سپس دستورالعملهای روی صفحه را دنبال کنید تا پروژه Firebase ایجاد کنید یا سرویسهای Firebase را به پروژه Google Cloud موجود اضافه کنید.
در پانل سمت راست، به پایگاههای داده و فضای ذخیرهسازی > Firestore بروید.
روی ایجاد پایگاه داده کلیک کنید.
مکانی برای پایگاه دادهتان انتخاب کنید.
اگر نمیتوانید مکانی را انتخاب کنید، «مکان منابع پیشفرض Google Cloud» پروژهتان قبلاً تنظیم شده است. برخیاز منابع پروژه شما (مثل نمونه پیشفرض Cloud Firestore) وابستگی مکانی مشترکی دارند، و مکان آنها را میتوان درطول ایجاد پروژه یا هنگام راهاندازی سرویس دیگری که این وابستگی مکانی را دارد تنظیم کرد.
حالت شروع را برای Cloud Firestore Security Rules انتخاب کنید:
- حالت آزمایشی
برای شروع کار با کتابخانههای کارخواه وب و تلفن همراه مناسب است، اما به همه اجازه میدهد دادههایتان را بخوانند و بازنویسی کنند. پساز آزمایش، حتماً بخش ایمنسازی دادهها را مرور کنید.
برای شروع کار با وب، پلاتفرمهای Apple، یا کیت توسعه نرمافزار Android، حالت آزمایش را انتخاب کنید.
- حالت تولید
همه خواندنها و نوشتنها را از کلاینتهای وب و تلفن همراه رد میکند. سرورهای برنامه اصالتسنجیشده شما (C#، Go، Java، Node.js، PHP، Python، یا Ruby) همچنان میتوانند به پایگاه داده شما دسترسی داشته باشند.
برای شروع کار با کتابخانه کارخواه سرور C#، Go، Java، Node.js، PHP، Python، یا Ruby، حالت تولید را انتخاب کنید.
مجموعه اولیه Cloud Firestore Security Rules برای پایگاه داده پیشفرض Cloud Firestore شما اعمال خواهد شد. اگر چندین پایگاه داده برای پروژهتان ایجاد کنید، میتوانید برای هر پایگاه داده Cloud Firestore Security Rules مستقر کنید.
روی ایجاد کردن کلیک کنید.
وقتی Cloud Firestore را فعال میکنید، میانای برنامهسازی کاربردی نیز در مدیر میانای برنامهسازی کاربردی Cloud فعال میشود.
راهاندازی محیط توسعه نرمافزار
وابستگیهای لازم و کتابخانههای مشتری را به برنامهتان اضافه کنید.
جاوا
- افزودن Firebase Admin SDK به برنامه:
-
بااستفاده از Gradle:
implementation 'com.google.firebase:firebase-admin:9.11.0'
-
استفاده از Maven:
<dependency> <groupId>com.google.firebase</groupId> <artifactId>firebase-admin</artifactId> <version>9.11.0</version> </dependency>
-
بااستفاده از Gradle:
- دستورالعملهای زیر را برای مقداردهی اولیه Cloud Firestore با اطلاعات اعتباری مناسب در محیط خود دنبال کنید.
پایتون
- افزودن Firebase Admin SDK به برنامه Python:
pip install --upgrade firebase-admin
- دستورالعملهای زیر را برای مقداردهی اولیه Cloud Firestore با اطلاعات اعتباری مناسب در محیط خود دنبال کنید.
Node.js
-
Firebase Admin SDK را به برنامهتان اضافه کنید:
npm install firebase-admin --save
- دستورالعملهای زیر را برای مقداردهی اولیه Cloud Firestore با اعتبارنامههای مناسب در محیط خود دنبال کنید.
رفتن
- افزودن Firebase Admin SDK به برنامه Go:
go get firebase.google.com/go
- دستورالعملهای زیر را برای مقداردهی اولیه Cloud Firestore با اطلاعات اعتباری مناسب در محیط خود دنبال کنید.
PHP
-
کتابخانههای کارخواه سرور 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" - در محیط تولید، اگر برنامهتان را در App Engine یا Compute Engine بااستفاده از همان پروژهای که برای Cloud Firestore استفاده میکنید اجرا کنید، نیازی به اصالتسنجی ندارید. درغیراینصورت، حساب سرویس راهاندازی کنید.
-
برای اصالتسنجی از محیط توسعه نرمافزار، متغیر محیطی
- افزونه gRPC را برای PHP نصب و فعال کنید. برای استفاده از کتابخانه کارخواه به آن نیاز خواهید داشت.
-
کتابخانه Cloud Firestore PHP را به برنامهتان اضافه کنید:
composer require google/cloud-firestore
Ruby
-
کتابخانههای کارخواه سرور 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"
- در محیط تولید، اگر برنامهتان را در App Engine یا Compute Engine بااستفاده از همان پروژهای که برای Cloud Firestore استفاده میکنید اجرا کنید، نیازی به اصالتسنجی ندارید. درغیراینصورت، حساب سرویس راهاندازی کنید.
-
برای اصالتسنجی از محیط توسعه نرمافزار، متغیر محیطی
-
کتابخانه Cloud Firestore Ruby را در
Gemfileبه برنامهتان اضافه کنید:gem "google-cloud-firestore"
-
وابستگیها را از
Gemfileبااستفاده از موارد زیر نصب کنید:bundle install
(اختیاری) نمونهسازی و آزمایش با Firebase Local Emulator Suite
برای توسعهدهندگان تلفن همراه، قبلاز صحبت درباره نحوه نوشتن و خواندن برنامهتان از Cloud Firestore، بیایید مجموعهای از ابزارها را معرفی کنیم که میتوانید برای نمونهسازی و آزمایش عملکرد Cloud Firestore استفاده کنید: Firebase Local Emulator Suite. اگر درحال امتحان کردن مدلهای داده مختلف، بهینهسازی قوانین امنیتی، یا تلاش برای یافتن مقرونبهصرفهترین روش برای تعامل با پسبک هستید، توانایی کار کردن بهصورت محلی بدون استقرار خدمات زنده میتواند ایده بسیار خوبی باشد.
شبیهساز Cloud Firestore بخشی از Local Emulator Suite است که به برنامه شما امکان میدهد با محتوا و پیکربندی پایگاه داده شبیهسازیشده شما، و همچنین بهصورت اختیاری با منابع پروژه شبیهسازیشده شما (توابع، پایگاههای داده دیگر، و قوانین امنیتی) تعامل داشته باشد.
استفاده از شبیهساز Cloud Firestore فقط چند مرحله دارد:
- افزودن یک خط کد به پیکربندی آزمایشی برنامهتان برای اتصال به شبیهساز.
- از ریشه دایرکتوری پروژه محلی شما، درحال اجرای
firebase emulators:start. - برقراری تماس از کد نمونه اولیه برنامهتان بااستفاده از کیت توسعه نرمافزار پلاتفرم Cloud Firestore طبق معمول.
راهنمای گامبهگام دقیقی شامل Cloud Firestore و Cloud Functions دردسترس است. همچنین باید نگاهی به Local Emulator Suite مقدمه بیندازید.
مقداردهی اولیه Cloud Firestore
نمونهای از Cloud Firestore را مقداردهی اولیه کنید:
جاوا
کیت توسعه نرمافزار Cloud 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();
برای استفاده از Firebase Admin SDK در سرور خودتان، از حساب سرویس استفاده کنید.
به IAM & admin (مدیریت هویت و دسترسی و سرپرست) > Service accounts (حسابهای سرویس) در کنسول Google Cloud بروید. کلید خصوصی جدیدی ایجاد کنید و فایل 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();
پایتون
کیت توسعه نرمافزار Cloud Firestore بسته به محیط شما به روشهای مختلفی مقداردهی اولیه میشود. رایجترین روشها در زیر آمده است. برای مرجع کامل، مقداردهی اولیه کیت توسعه نرمافزار سرپرست را ببینید.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 (مدیریت هویت و دسترسی و سرپرست) > Service accounts (حسابهای سرویس) در کنسول Google Cloud بروید. کلید خصوصی جدیدی ایجاد کنید و فایل 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') app = firebase_admin.initialize_app(cred) db = firestore.client()
Python
کیت توسعه نرمافزار Cloud Firestore بسته به محیط شما به روشهای مختلفی مقداردهی اولیه میشود. رایجترین روشها در زیر آمده است. برای مرجع کامل، مقداردهی اولیه کیت توسعه نرمافزار سرپرست را ببینید.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 (مدیریت هویت و دسترسی و سرپرست) > Service accounts (حسابهای سرویس) در کنسول Google Cloud بروید. کلید خصوصی جدیدی ایجاد کنید و فایل JSON را ذخیره کنید. سپس از این فایل برای مقداردهی اولیه کیت توسعه نرمافزار استفاده کنید:
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()
Node.js
کیت توسعه نرمافزار Cloud Firestore بسته به محیط شما به روشهای مختلفی مقداردهی اولیه میشود. رایجترین روشها در زیر آمده است. برای مرجع کامل، مقداردهی اولیه کیت توسعه نرمافزار سرپرست را ببینید.-
مقداردهی اولیه در 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();
-
مقداردهی اولیه در سرور خودتان
برای استفاده از Firebase Admin SDK در سرور خودتان (یا هر محیط Node.js دیگر)، از حساب سرویس استفاده کنید. در کنسول Google Cloud، به IAM و سرپرست > حسابهای سرویس بروید. کلید خصوصی جدیدی ایجاد کنید و فایل JSON را ذخیره کنید. سپس از این فایل برای مقداردهی اولیه کیت توسعه نرمافزار استفاده کنید:
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 بسته به محیط شما به روشهای مختلفی مقداردهی اولیه میشود. رایجترین روشها در زیر آمده است. برای مرجع کامل، مقداردهی اولیه کیت توسعه نرمافزار سرپرست را ببینید.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 (مدیریت هویت و دسترسی و سرپرست) > Service accounts (حسابهای سرویس) در کنسول Google Cloud بروید. کلید خصوصی جدیدی ایجاد کنید و فایل 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()
PHP
PHP
برای کسب اطلاعات بیشتر درباره نصب و ایجاد کارخواه Cloud Firestore، به کتابخانههای کارخواه Cloud Firestore مراجعه کنید.
سی شارپ
سی شارپ
برای کسب اطلاعات بیشتر درباره نصب و ایجاد کارخواه Cloud Firestore، به کتابخانههای کارخواه Cloud Firestore مراجعه کنید.
Ruby
افزودن دادهها
Cloud Firestore دادهها را در «اسناد» ذخیره میکند که در «مجموعهها» ذخیره میشوند. Cloud Firestore مجموعهها و اسناد را بهطور ضمنی در اولین باری که دادهها را به سند اضافه میکنید ایجاد میکند. نیازی نیست بهطور صریح مجموعه یا سند ایجاد کنید.
بااستفاده از کد نمونه زیر، مجموعه و سند جدیدی ایجاد کنید.
جاوا
پایتون
Python
Node.js
رفتن
PHP
PHP
برای کسب اطلاعات بیشتر درباره نصب و ایجاد کارخواه Cloud Firestore، به کتابخانههای کارخواه Cloud Firestore مراجعه کنید.
سی شارپ
Ruby
اکنون سند دیگری به مجموعه users اضافه کنید. توجه داشته باشید که این سند
شامل یک جفت کلید-مقدار (نام میانی) است که در سند اول
ظاهر نمیشود. اسناد موجود در مجموعه میتوانند حاوی مجموعههای مختلفی از اطلاعات باشند.
جاوا
پایتون
Python
Node.js
رفتن
PHP
PHP
برای کسب اطلاعات بیشتر درباره نصب و ایجاد کارخواه Cloud Firestore، به کتابخانههای کارخواه Cloud Firestore مراجعه کنید.
سی شارپ
Ruby
دادهها خوانده شد
از نمایشگر داده در کنسول Firebase استفاده کنید تا بهسرعت تأیید کنید که دادهها را به Cloud Firestore اضافه کردهاید.
همچنین میتوانید از روش «get» برای بازیابی کل مجموعه استفاده کنید.
جاوا
پایتون
users_ref = db.collection("users") docs = users_ref.stream() for doc in docs: print(f"{doc.id} => {doc.to_dict()}")
Python
Node.js
رفتن
PHP
PHP
برای کسب اطلاعات بیشتر درباره نصب و ایجاد کارخواه Cloud Firestore، به کتابخانههای کارخواه Cloud Firestore مراجعه کنید.
سی شارپ
Ruby
مراحل بعدی
دانشتان را با موضوعات زیر عمیقتر کنید:
- مدل داده — درباره نحوه ساختاردهی دادهها در Cloud Firestore، ازجمله دادههای سلسلهمراتبی و زیرمجموعهها، بیشتر بدانید.
- افزودن داده — درباره ایجاد و بهروزرسانی دادهها در Cloud Firestore بیشتر بدانید.
- دریافت داده — درباره نحوه بازیابی دادهها بیشتر بدانید.
- اجرای پُرسمانهای ساده و مرکب — با نحوه اجرای پُرسمانهای ساده و مرکب آشنا شوید.
- مرتبسازی و محدود کردن پُرسمانها با نحوه مرتبسازی و محدود کردن دادههای برگرداندهشده توسط پُرسمانهایتان آشنا شوید.