Làm quen với Dart SDK thử nghiệm

Tính năng hỗ trợ Dart thử nghiệm trong Cloud Functions for Firebase cho phép bạn tạo các ứng dụng full-stack bằng Flutter và Dart. Giao tiếp với các dịch vụ Firebase khác bằng Firebase Admin Dart SDK mới.

Để bắt đầu với 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

Kiểm tra để đảm bảo bạn có phiên bản CLI Firebase hỗ trợ Dart trong Cloud Functions for Firebase bằng cờ --version:

 `firebase --version`

Bật thử nghiệm trong giao diện dòng lệnh Firebase

firebase experiments:enable dartfunctions

Khởi chạy dự án

  1. Chạy: bash firebase init functions
  2. Chọn Dart làm ngôn ngữ của bạn.
  3. 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

Xem mã đã được tạo trong functions/bin/server.dart (hoặc điểm truy cập của bạn). Đoạ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 phiên bản 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 lựa chọn thời gian chạy trong phần Đặt các lựa 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 để được tạo trong Cloud Build, Firebase CLI sẽ chạy một 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

Hạn chế

  • Bạn có thể triển khai trình kích hoạt onCall nhưng không thể gọi trình kích hoạt này từ các SDK ứng dụng với những 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 đầy đủ của Cloud Run cho 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 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.