Hướng dẫn bắt đầu nhanh này cho bạn biết cách thiết lập Cloud Firestore Enterprise Edition, thêm dữ liệu, sau đó xem dữ liệu bạn vừa thêm trong bảng điều khiển Firebase bằng cách sử dụng thư viện ứng dụng máy chủ cho C#, Go, Java, Node.js, PHP, Python và Ruby.
Sử dụng các thư viện ứng dụng này để thiết lập môi trường máy chủ đặc quyền có quyền truy cập đầy đủ vào cơ sở dữ liệu của bạn.
Tạo cơ sở dữ liệu Cloud Firestore
Nếu chưa có, bạn cần tạo một dự án Firebase: Trong bảng điều khiển Firebase, hãy nhấp vào Thêm dự án, sau đó làm theo hướng dẫn trên màn hình để tạo một dự án Firebase hoặc thêm các dịch vụ Firebase vào một dự án Google Cloud hiện có.
Mở dự án của bạn trong bảng điều khiển Firebase. Trong bảng điều khiển bên trái, hãy mở rộng mục Build (Tạo) rồi chọn Cơ sở dữ liệu Firestore.
Nhấp vào Tạo cơ sở dữ liệu.
Chọn một vị trí cho cơ sở dữ liệu của bạn.
Nếu không chọn được vị trí, tức là bạn đã đặt "vị trí cho tài nguyên Google Cloud mặc định" của dự án. Một số tài nguyên của dự án (chẳng hạn như phiên bản Cloud Firestore mặc định) dùng chung một phần phụ thuộc vị trí và vị trí của các tài nguyên này có thể được đặt trong quá trình tạo dự án hoặc khi thiết lập một dịch vụ khác dùng chung phần phụ thuộc vị trí này.
Chọn chế độ khởi động cho Cloud Firestore Security Rules:
- Chế độ kiểm thử
Phù hợp để bắt đầu sử dụng các thư viện ứng dụng di động và web, nhưng cho phép mọi người đọc và ghi đè dữ liệu của bạn. Sau khi kiểm thử, hãy nhớ xem lại phần Bảo mật dữ liệu của bạn.
Để bắt đầu với SDK web, SDK cho các nền tảng của Apple hoặc SDK Android, hãy chọn chế độ kiểm thử.
- Chế độ sản xuất
Từ chối mọi lượt đọc và ghi từ ứng dụng di động và ứng dụng web. Các máy chủ ứng dụng được xác thực (C#, Go, Java, Node.js, PHP, Python hoặc Ruby) vẫn có thể truy cập vào cơ sở dữ liệu của bạn.
Để bắt đầu sử dụng thư viện ứng dụng máy chủ C#, Go, Java, Node.js, PHP, Python hoặc Ruby, hãy chọn chế độ sản xuất.
Nhóm Cloud Firestore Security Rules ban đầu sẽ áp dụng cho cơ sở dữ liệu Cloud Firestore mặc định của bạn. Nếu tạo nhiều cơ sở dữ liệu cho dự án, bạn có thể triển khai Cloud Firestore Security Rules cho từng cơ sở dữ liệu.
Nhấp vào Tạo.
Khi bạn bật Cloud Firestore, API này cũng sẽ được bật trong Trình quản lý API trên đám mây.
Thiết lập môi trường phát triển
Thêm các phần phụ thuộc và thư viện ứng dụng cần thiết vào ứng dụng của bạn.
Java
- Thêm Firebase Admin SDK vào ứng dụng của bạn:
-
Sử dụng Gradle:
implementation 'com.google.firebase:firebase-admin:9.7.1'
-
Sử dụng Maven:
<dependency> <groupId>com.google.firebase</groupId> <artifactId>firebase-admin</artifactId> <version>9.7.1</version> </dependency>
-
Sử dụng Gradle:
- Hãy làm theo hướng dẫn bên dưới để khởi tạo Cloud Firestore bằng thông tin đăng nhập thích hợp trong môi trường của bạn.
Python
- Thêm Firebase Admin SDK vào ứng dụng Python của bạn:
pip install --upgrade firebase-admin
- Hãy làm theo hướng dẫn bên dưới để khởi tạo Cloud Firestore bằng thông tin đăng nhập thích hợp trong môi trường của bạn.
Node.js
-
Thêm Firebase Admin SDK vào ứng dụng của bạn:
npm install firebase-admin --save
- Hãy làm theo hướng dẫn bên dưới để khởi tạo Cloud Firestore bằng thông tin đăng nhập thích hợp trong môi trường của bạn.
Go
- Thêm Firebase Admin SDK vào ứng dụng Go của bạn:
go get firebase.google.com/go
- Hãy làm theo hướng dẫn bên dưới để khởi tạo Cloud Firestore bằng thông tin đăng nhập thích hợp trong môi trường của bạn.
PHP
-
Thư viện ứng dụng máy chủ Cloud Firestore (Java, Node.js, Python, Go, PHP, C# và Ruby) sử dụng Thông tin xác thực mặc định của ứng dụng trên Google để xác thực.
-
Để xác thực từ môi trường phát triển, hãy đặt biến môi trường
GOOGLE_APPLICATION_CREDENTIALSđể trỏ đến một tệp khoá tài khoản dịch vụ JSON. Bạn có thể tạo một tệp khoá trên trang Thông tin xác thực API Console.export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json" - Trong môi trường phát hành chính thức, bạn không cần xác thực nếu chạy ứng dụng trên App Engine hoặc Compute Engine, bằng cách sử dụng cùng một dự án mà bạn dùng cho Cloud Firestore. Nếu không, hãy thiết lập tài khoản dịch vụ.
-
Để xác thực từ môi trường phát triển, hãy đặt biến môi trường
- Cài đặt và bật tiện ích gRPC cho PHP. Bạn sẽ cần sử dụng tiện ích này để dùng thư viện ứng dụng.
-
Thêm thư viện Cloud Firestore PHP vào ứng dụng của bạn:
composer require google/cloud-firestore
Ruby
-
Thư viện ứng dụng máy chủ Cloud Firestore (Java, Node.js, Python, Go, PHP, C# và Ruby) sử dụng Thông tin xác thực mặc định của ứng dụng trên Google để xác thực.
-
Để xác thực từ môi trường phát triển, hãy đặt biến môi trường
GOOGLE_APPLICATION_CREDENTIALSđể trỏ đến một tệp khoá tài khoản dịch vụ JSON. Bạn có thể tạo một tệp khoá trên trang Thông tin xác thực API Console.export GOOGLE_APPLICATION_CREDENTIALS="path/to/your/keyfile.json"
- Trong môi trường phát hành chính thức, bạn không cần xác thực nếu chạy ứng dụng trên App Engine hoặc Compute Engine, bằng cách sử dụng cùng một dự án mà bạn dùng cho Cloud Firestore. Nếu không, hãy thiết lập tài khoản dịch vụ.
-
Để xác thực từ môi trường phát triển, hãy đặt biến môi trường
-
Thêm thư viện Cloud Firestore Ruby vào ứng dụng của bạn trong
Gemfile:gem "google-cloud-firestore"
-
Cài đặt các phần phụ thuộc từ
Gemfilebằng cách sử dụng:bundle install
(Không bắt buộc) Tạo nguyên mẫu và kiểm thử bằng Firebase Local Emulator Suite
Đối với nhà phát triển thiết bị di động, trước khi nói về cách ứng dụng của bạn ghi và đọc từ Cloud Firestore, hãy giới thiệu một bộ công cụ mà bạn có thể dùng để tạo mẫu và kiểm thử chức năng Cloud Firestore: Firebase Local Emulator Suite. Nếu bạn đang thử nghiệm các mô hình dữ liệu khác nhau, tối ưu hoá các quy tắc bảo mật hoặc tìm cách tương tác với phần phụ trợ hiệu quả nhất về chi phí, thì việc có thể làm việc cục bộ mà không cần triển khai các dịch vụ trực tiếp có thể là một ý tưởng hay.
Trình mô phỏng Cloud Firestore là một phần của Local Emulator Suite, cho phép ứng dụng của bạn tương tác với nội dung và cấu hình cơ sở dữ liệu được mô phỏng, cũng như các tài nguyên dự án được mô phỏng (các hàm, cơ sở dữ liệu khác và quy tắc bảo mật) (không bắt buộc).
Bạn chỉ cần thực hiện vài bước để sử dụng trình mô phỏng Cloud Firestore:
- Thêm một dòng mã vào cấu hình kiểm thử của ứng dụng để kết nối với trình mô phỏng.
- Từ gốc của thư mục dự án cục bộ, hãy chạy
firebase emulators:start. - Thực hiện các lệnh gọi từ mã nguyên mẫu của ứng dụng bằng SDK nền tảng Cloud Firestore như thường lệ.
Chúng tôi có một hướng dẫn chi tiết liên quan đến Cloud Firestore và Cloud Functions. Bạn cũng nên xem phần giới thiệu về Local Emulator Suite.
Khởi chạy Cloud Firestore
Khởi động một phiên bản của Cloud Firestore:
Java
SDK Cloud Firestore được khởi chạy theo nhiều cách tuỳ thuộc vào môi trường của bạn. Dưới đây là những phương pháp phổ biến nhất. Để biết thông tin tham khảo đầy đủ, hãy xem phần Khởi chạy Admin 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();
Để sử dụng Firebase Admin SDK trên máy chủ của riêng bạn, hãy sử dụng một tài khoản dịch vụ.
Chuyển đến IAM và quản trị > Tài khoản dịch vụ trong bảng điều khiển Google Cloud. Tạo một khoá riêng tư mới và lưu tệp JSON. Sau đó, hãy dùng tệp này để khởi chạy 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();
Python
SDK Cloud Firestore được khởi chạy theo nhiều cách tuỳ thuộc vào môi trường của bạn. Dưới đây là những phương pháp phổ biến nhất. Để biết thông tin tham khảo đầy đủ, hãy xem phần Khởi chạy Admin SDK.import firebase_admin from firebase_admin import firestore # Application Default credentials are automatically created. app = firebase_admin.initialize_app() db = firestore.client()
Bạn cũng có thể dùng thông tin đăng nhập mặc định hiện có của ứng dụng để khởi chạy 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()
Để sử dụng Firebase Admin SDK trên máy chủ của riêng bạn, hãy sử dụng một tài khoản dịch vụ.
Chuyển đến IAM và quản trị > Tài khoản dịch vụ trong bảng điều khiển Google Cloud. Tạo một khoá riêng tư mới và lưu tệp JSON. Sau đó, hãy dùng tệp này để khởi chạy 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
SDK Cloud Firestore được khởi chạy theo nhiều cách tuỳ thuộc vào môi trường của bạn. Dưới đây là những phương pháp phổ biến nhất. Để biết thông tin tham khảo đầy đủ, hãy xem phần Khởi chạy Admin 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()
Bạn cũng có thể dùng thông tin đăng nhập mặc định hiện có của ứng dụng để khởi chạy 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()
Để sử dụng Firebase Admin SDK trên máy chủ của riêng bạn, hãy sử dụng một tài khoản dịch vụ.
Chuyển đến IAM và quản trị > Tài khoản dịch vụ trong bảng điều khiển Google Cloud. Tạo một khoá riêng tư mới và lưu tệp JSON. Sau đó, hãy dùng tệp này để khởi chạy 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()
Node.js
SDK Cloud Firestore được khởi chạy theo nhiều cách tuỳ thuộc vào môi trường của bạn. Dưới đây là những phương pháp phổ biến nhất. Để biết thông tin tham khảo đầy đủ, hãy xem phần Khởi chạy Admin SDK.-
Khởi chạy vào ngày Cloud Functions
const { initializeApp, applicationDefault, cert } = require('firebase-admin/app'); const { getFirestore, Timestamp, FieldValue, Filter } = require('firebase-admin/firestore');
initializeApp(); const db = getFirestore();
-
Khởi chạy vào ngày 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();
-
Khởi động trên máy chủ của riêng bạn
Để sử dụng Firebase Admin SDK trên máy chủ của riêng bạn (hoặc bất kỳ môi trường Node.js nào khác), hãy sử dụng tài khoản dịch vụ. Chuyển đến phần IAM và quản trị > Tài khoản dịch vụ trong bảng điều khiển Google Cloud. Tạo khoá riêng tư mới và lưu tệp JSON. Sau đó, hãy dùng tệp này để khởi chạy 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();
Go
SDK Cloud Firestore được khởi chạy theo nhiều cách tuỳ thuộc vào môi trường của bạn. Dưới đây là những phương pháp phổ biến nhất. Để biết thông tin tham khảo đầy đủ, hãy xem phần Khởi chạy Admin 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()
Để sử dụng Firebase Admin SDK trên máy chủ của riêng bạn, hãy sử dụng một tài khoản dịch vụ.
Chuyển đến IAM và quản trị > Tài khoản dịch vụ trong bảng điều khiển Google Cloud. Tạo một khoá riêng tư mới và lưu tệp JSON. Sau đó, hãy dùng tệp này để khởi chạy 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()
PHP
PHP
Để biết thêm thông tin về cách cài đặt và tạo ứng dụng Cloud Firestore, hãy tham khảo Thư viện ứng dụng Cloud Firestore.
C#
C#
Để biết thêm thông tin về cách cài đặt và tạo ứng dụng Cloud Firestore, hãy tham khảo Thư viện ứng dụng Cloud Firestore.
Ruby
Thêm dữ liệu
Cloud Firestore lưu trữ dữ liệu trong Tài liệu, được lưu trữ trong Bộ sưu tập. Cloud Firestore sẽ tạo các bộ sưu tập và tài liệu một cách ngầm ẩn vào lần đầu tiên bạn thêm dữ liệu vào tài liệu. Bạn không cần phải tạo rõ ràng các bộ sưu tập hoặc tài liệu.
Tạo một bộ sưu tập và tài liệu mới bằng mã ví dụ sau.
Java
Python
Python
Node.js
Go
PHP
PHP
Để biết thêm thông tin về cách cài đặt và tạo ứng dụng Cloud Firestore, hãy tham khảo Thư viện ứng dụng Cloud Firestore.
C#
Ruby
Bây giờ, hãy thêm một tài liệu khác vào bộ sưu tập users. Xin lưu ý rằng tài liệu này có một cặp khoá-giá trị (tên đệm) không xuất hiện trong tài liệu đầu tiên. Các tài liệu trong một bộ sưu tập có thể chứa nhiều bộ thông tin.
Java
Python
Python
Node.js
Go
PHP
PHP
Để biết thêm thông tin về cách cài đặt và tạo ứng dụng Cloud Firestore, hãy tham khảo Thư viện ứng dụng Cloud Firestore.
C#
Ruby
Đọc dữ liệu
Sử dụng trình xem dữ liệu trong bảng điều khiển của Firebase để nhanh chóng xác minh rằng bạn đã thêm dữ liệu vào Cloud Firestore.
Bạn cũng có thể sử dụng phương thức "get" để truy xuất toàn bộ tập hợp.
Java
Python
users_ref = db.collection("users") docs = users_ref.stream() for doc in docs: print(f"{doc.id} => {doc.to_dict()}")
Python
Node.js
Go
PHP
PHP
Để biết thêm thông tin về cách cài đặt và tạo ứng dụng Cloud Firestore, hãy tham khảo Thư viện ứng dụng Cloud Firestore.
C#
Ruby
Các bước tiếp theo
Mở rộng kiến thức của bạn với các chủ đề sau:
- Mô hình dữ liệu – Tìm hiểu thêm về cách dữ liệu được cấu trúc trong Cloud Firestore, bao gồm cả dữ liệu phân cấp và các bộ sưu tập con.
- Thêm dữ liệu – Tìm hiểu thêm về cách tạo và cập nhật dữ liệu trong Cloud Firestore.
- Nhận dữ liệu – Tìm hiểu thêm về cách truy xuất dữ liệu.
- Thực hiện các truy vấn đơn giản và phức tạp – Tìm hiểu cách chạy các truy vấn đơn giản và phức tạp.
- Sắp xếp và giới hạn truy vấn Tìm hiểu cách sắp xếp và giới hạn dữ liệu do truy vấn của bạn trả về.