Pierwsze kroki z eksperymentalnym pakietem Dart SDK

Eksperymentalna obsługa języka Dart w Cloud Functions for Firebase umożliwia tworzenie aplikacji pełnostosowych 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 czynności 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 Firebase z flagą --version:Cloud Functions for Firebase

 `firebase --version`

Włącz eksperyment w interfejsie Firebase CLI

firebase experiments:enable dartfunctions

Inicjowanie projektu

  1. Uruchomienie:

    firebase init functions
    
  2. Wybierz język Dart.

  3. Na pytanie „Czy chcesz teraz zainstalować zależności?” odpowiedz „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 czasu działania znajdziesz w artykule Ustawianie opcji czasu działania.

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 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 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 wydania eksperymentalnego. Funkcje w Dart możesz wyświetlić na stronie funkcji w Cloud Runkonsoli.Cloud

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.