Tính năng hỗ trợ Dart thử nghiệm trong Cloud Functions for Firebase cho phép bạn xây dựng ứng dụng toàn ngăn xếp bằng Flutter và Dart. Giao tiếp với các dịch vụ khác của Firebase bằng SDK Admin Dart Firebasemới.
Để bắt đầu sử dụng các hàm Dart, hãy thực hiện các tác 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
- SDK Dart 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
Chạy dự án của bạ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 không?), hãy trả lời "Yes" (Có).
Xem mã hàm
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 là 10 bằng trình 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 Đặ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, Firebase CLI 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 Cloud Run functions.
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ề các hàm HTTP và các 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ẫuonCallhoặc mẫuonCallcó tính năng truyền trực tuyến để gọi các hàm trực tiếp từ ứng dụng của mình (lưu ý về hạn chế đặc biệt liên quan đến phương thức gọi).
Hạn chế
- Bạn có thể triển khai trình kích hoạt
onCallnhưng không thể gọi từ SDK ứng dụng bằng các phương thức như httpsCallable, (xác định các 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 trình kích hoạt khác (chẳng hạn như trình kích hoạt Firestore) trong bộ 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 Cloud bảng điều khiển.
Nếu phát hiện thấy vấn đề 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.