Pierwsze kroki z eksperymentalnym pakietem Dart SDK

Eksperymentalna obsługa Darta w Cloud Functions for Firebase umożliwia tworzenie aplikacji typu full-stack za pomocą Fluttera i Darta. Komunikuj się z innymi usługami Firebase za pomocą nowego Firebasepakietu Admin Dart SDK.

Aby rozpocząć korzystanie z funkcji Dart, wykonaj zadania konfiguracyjne opisane w tym przewodniku, a następnie zapoznaj się z funkcjami HTTP i wywoływanymi w Dart.

Wymagania wstępne

Sprawdź, czy masz wersję interfejsu Firebase CLI, która obsługuje język Dart w Cloud Functions for Firebase z użyciem flagi --version:

 `firebase --version`

Włącz eksperyment w interfejsie Firebase CLI

firebase experiments:enable dartfunctions

Zainicjuj projekt

  1. Bieg:bash firebase init functions
  2. Wybierz język Dart.
  3. Na pytanie „Do you want to install dependencies now?” (Czy chcesz teraz zainstalować zależności?) odpowiedz „Yes” (Tak).

Wyświetlanie kodu funkcji

Wyświetl kod wygenerowany w functions/bin/server.dart (lub w punkcie wejścia). Ten kod przedstawia prostą funkcję HTTP.

Zwróć uwagę, że w przykładowym kodzie maksymalna liczba instancji funkcji helloWorld jest ustawiona na 10 za pomocą konstruktora HttpsOptions. Więcej informacji o opcjach środowiska wykonawczego znajdziesz w artykule Ustawianie opcji środowiska wykonawczego.

Testowanie lokalne

firebase emulators:start

Po uruchomieniu Local Emulator Suite zobaczysz wiersz dziennika podobny do functions http function initialized (http://127.0.0.1:5001/<url>). Załaduj ten adres URL w przeglądarce, aby wywołać lokalnie emulowaną funkcję Dart.

Jeśli edytujesz kod w Dart, Firebase Local Emulator Suite wykryje zmianę i automatycznie ponownie załaduje funkcję.

Wdróż

firebase deploy --only functions

Proces wdrażania w przypadku funkcji w Dart różni się od wdrażania funkcji w Node.js lub Pythonie. Zamiast przesyłać kod źródłowy do kompilacji w Cloud Build, interfejs wiersza poleceń Firebase uruchamia krok kompilacji Dart na komputerze używanym do programowania i przesyła wygenerowany plik binarny bezpośrednio do Funkcji Cloud Run.

Po zakończeniu wdrażania zobaczysz w logu wiersz podobny do tego: Function URL (hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app

Załaduj ten adres URL w przeglądarce, aby wywołać nowo wdrożoną funkcję Dart.

Dalsze kroki

Ograniczenia

  • Wywoływacz onCall można wdrożyć, ale nie można go wywołać z pakietów SDK klienta za pomocą metod takich jak httpsCallable, które identyfikują funkcje według nazwy. Zamiast tego możesz użyć metod takich jak httpsCallableFromURL i przekazać pełny adres URL Cloud Run funkcji.
  • Inne wyzwalacze, np. wyzwalacze Firestore, można uruchamiać w lokalnym pakiecie emulatorów, ale nie można ich wdrażać.
  • Konsola Firebase nie wyświetla funkcji Dart podczas eksperymentalnej wersji. Funkcje w Dart możesz wyświetlić na stronie funkcji w Cloud konsoli.Cloud Run

Jeśli podczas pracy z funkcjami Dart napotkasz problemy, zachęcamy do przesłania zespołowi raportu, aby pomóc nam ulepszyć i rozwinąć eksperymentalny pakiet SDK Dart.