Tính năng hỗ trợ Dart thử nghiệm trong Cloud Functions for Firebase giúp bạn xây dựng ứng dụng toàn diện bằng Flutter và Dart. Giao tiếp với các dịch vụ khác của Firebase bằng Firebase Admin Dart SDK mới.
Để bắt đầu sử dụng các hàm Dart, hãy thực hiện các nhiệm vụ thiết lập trong hướng dẫn này, sau đó tiếp tục khám phá các hàm HTTP và hàm có thể gọi của Dart.
Điều kiện tiên quyết
- Dart SDK 3.9 trở lên
- Firebase CLI (phiên bản 15.15.0 trở lên)
Kiểm tra để đảm bảo bạn có phiên bản Firebase CLI hỗ trợ Dart trong Cloud Functions for Firebase bằng cờ --version:
`firebase --version`
Bật thử nghiệm trong Firebase CLI
firebase experiments:enable dartfunctions
Khởi chạy dự án
Chạy:
firebase init functionsChọn Dart làm ngôn ngữ của bạn.
Khi được hỏi "Do you want to install dependencies now?" (Bạn có muốn cài đặt các phần phụ thuộc ngay bây giờ không?), hãy trả lời "Yes" (Có).
Xem mã hàm của bạn
Xem mã được tạo trong functions/bin/server.dart (hoặc điểm truy cập của bạn). Mã này minh hoạ một hàm HTTP đơn giản.
Xin lưu ý rằng mã mẫu đặt số lượng thực thể tối đa cho hàm helloWorld thành 10 bằng hàm khởi tạo HttpsOptions. Bạn có thể tìm hiểu thêm về các tuỳ chọn thời gian chạy trong phần Đặt tuỳ chọn thời gian chạy.
Kiểm thử cục bộ
firebase emulators:start
Sau khi Local Emulator Suite khởi động, bạn sẽ thấy một dòng nhật ký như functions http function initialized
(http://127.0.0.1:5001/<url>). Tải URL đó trong trình duyệt để gọi hàm Dart được mô phỏng cục bộ.
Nếu bạn chỉnh sửa mã Dart, Firebase Local Emulator Suite sẽ phát hiện thay đổi và tự động tải lại hàm của bạn.
Triển khai
firebase deploy --only functions
Quy trình triển khai cho Dart khác với các hàm Node.js hoặc Python. Thay vì tải mã nguồn lên để tạo trong Cloud Build, CLI Firebase sẽ chạy bước biên dịch Dart trên máy phát triển của bạn và tải tệp nhị phân đã tạo trực tiếp lên các hàm Cloud Run.
Khi quá trình triển khai hoàn tất, bạn sẽ thấy một dòng nhật ký như Function URL
(hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app
Tải URL đó trong trình duyệt để gọi hàm Dart mới triển khai.
Các bước tiếp theo
- Đặt các tuỳ chọn cấu hình như số lượng thực thể tối thiểu.
- Tìm hiểu thêm về hàm HTTP và hàm có thể gọi.
- Làm theo lớp học lập trình về Hàm Dart Lớp học lập trình về Hàm Dart
- Sử dụng Dart Admin SDK thử nghiệm để tương tác với các dịch vụ Firebase khác, chẳng hạn như Cloud Firestore, từ hàm của bạn
- Ngoài các hàm HTTP
onRequest, bạn có thể thử một mẫuonCallhoặc mẫuonCallcó tính năng truyền trực tuyến để gọi hàm trực tiếp từ ứng dụng của bạn (lưu ý giới hạn đặc biệt liên quan đến phương thức gọi).
Hạn chế
- Bạn có thể triển khai điều kiện kích hoạt
onCallnhưng không thể gọi điều kiện này từ SDK ứng dụng bằng các phương thức như httpsCallable (xác định hàm theo tên). Thay vào đó, bạn có thể sử dụng các phương thức như httpsCallableFromURL và truyền URL Cloud Run đầy đủ của hàm. - Bạn có thể chạy các điều kiện kích hoạt khác (chẳng hạn như điều kiện kích hoạt Firestore) trong bộ trình mô phỏng cục bộ, nhưng không thể triển khai.
- Bảng điều khiển Firebase không hiển thị các hàm Dart trong bản phát hành thử nghiệm. Thay vào đó, bạn có thể xem các hàm Dart trong trang hàm Cloud Run của bảng điều khiển Cloud.
Nếu phát hiện vấn đề trong khi làm việc với các hàm Dart, bạn nên gửi báo cáo cho nhóm để giúp chúng tôi cải thiện và mở rộng SDK Dart thử nghiệm.