Pierwsze kroki z eksperymentalnym pakietem Dart SDK

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

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

Wymagania wstępne

Sprawdź, czy masz wersję interfejsu wiersza poleceń Firebase, która obsługuje Dart w Cloud Functions for Firebase z flagą --version:

 `firebase --version`

Włączanie eksperymentu w interfejsie wiersza poleceń Firebase

firebase experiments:enable dartfunctions

Inicjowanie projektu

  1. Uruchomienie:

    firebase init functions
    
  2. Wybierz Dart jako język.

  3. Gdy pojawi się 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 punkcie wejścia). Ten kod przedstawia prostą funkcję HTTP.

Zwróć uwagę, że przykładowy kod ustawia maksymalną liczbę instancji funkcji helloWorld 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 logu podobny do functions http function initialized (http://127.0.0.1:5001/<url>). Wczytaj ten adres URL w przeglądarce, aby wywołać lokalnie emulowaną funkcję Dart.

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

Wdróż

firebase deploy --only functions

Proces wdrażania Dart różni się od wdrażania funkcji Node.js lub Python. Zamiast przesyłać kod źródłowy do skompilowania 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 pojawi się wiersz dziennika podobny do tego: Function URL (hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app

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

Dalsze kroki

Ograniczenia

  • Aktywator 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 funkcji Cloud Run.
  • Inne aktywatory, takie jak aktywatory Firestore, można uruchamiać w pakiecie emulatorów lokalnych, ale nie można ich wdrażać.
  • W wersji eksperymentalnej konsola Firebase nie wyświetla funkcji Dart. Funkcje Dart możesz wyświetlić na stronie funkcji Cloud Run w konsoli Cloud.

Jeśli podczas pracy z funkcjami Dart napotkasz problemy, zachęcamy do wysłania zespołowi raportu, który pomoże nam ulepszyć i rozszerzyć eksperymentalny pakiet Dart SDK.