Erste Schritte mit dem experimentellen Dart SDK

Mit der experimentellen Dart-Unterstützung in Cloud Functions for Firebase können Sie Full-Stack Apps mit Flutter und Dart erstellen. Kommunizieren Sie mit anderen Firebase-Diensten über das neue Firebase Admin Dart SDK.

Wenn Sie mit Dart-Funktionen beginnen möchten, arbeiten Sie die Einrichtungsaufgaben in dieser Anleitung durch und sehen Sie sich dann Dart-HTTP- und aufrufbare Funktionen an.

Vorbereitung

Prüfen Sie mit dem Flag --version, ob Sie eine Version der Firebase CLI haben, die Dart in Cloud Functions for Firebase unterstützt:

 `firebase --version`

Test in der Firebase CLI aktivieren

firebase experiments:enable dartfunctions

Projekt initialisieren

  1. Führen Sie Folgendes aus: bash firebase init functions
  2. Wählen Sie Dart als Sprache aus.
  3. Wenn Sie gefragt werden, ob Sie die Abhängigkeiten jetzt installieren möchten, antworten Sie mit „Ja“.

Funktionscode ansehen

Sehen Sie sich den generierten Code in functions/bin/server.dart (oder Ihrem Einstiegspunkt) an. Dieser Code zeigt eine einfache HTTP-Funktion.

Im Beispielcode wird die maximale Anzahl von Instanzen für die Funktion helloWorld mit dem Konstruktor HttpsOptions auf 10 festgelegt. Weitere Informationen zu Laufzeitoptionen finden Sie unter Laufzeitoptionen festlegen.

Lokal testen

firebase emulators:start

Sobald die Local Emulator Suite gestartet wurde, sehen Sie eine Logzeile wie functions http function initialized (http://127.0.0.1:5001/<url>). Laden Sie diese URL in Ihrem Browser, um Ihre lokal emulierte Dart-Funktion aufzurufen.

Wenn Sie Ihren Dart-Code bearbeiten, erkennt die Firebase Local Emulator Suite die Änderung und lädt Ihre Funktion automatisch neu.

Bereitstellen

firebase deploy --only functions

Der Bereitstellungsprozess für Dart unterscheidet sich von dem für Node.js- oder Python-Funktionen. Anstatt Ihren Quellcode hochzuladen, damit er in Cloud Build erstellt wird, führt die Firebase CLI einen Dart-Kompilierungsschritt auf Ihrem Entwicklungscomputer aus und lädt die generierte Binärdatei direkt in Cloud Run Functions hoch.

Nach der Bereitstellung ist eine Logzeile wie Function URL (hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app zu sehen.

Laden Sie diese URL in Ihrem Browser, um Ihre neu bereitgestellte Dart-Funktion aufzurufen.

Nächste Schritte

Beschränkungen

  • Der onCall Trigger kann bereitgestellt, aber nicht über Client-SDKs mit Methoden wie httpsCallable aufgerufen werden, die Funktionen anhand des Namens identifizieren. Stattdessen können Sie Methoden wie httpsCallableFromURL verwenden und die vollständige Cloud Run-URL Ihrer Funktion übergeben.
  • Andere Trigger wie Firestore-Trigger können in der Local Emulator Suite ausgeführt, aber nicht bereitgestellt werden.
  • In der Firebase Console werden Dart-Funktionen während der Testphase nicht angezeigt. Stattdessen können Sie Dart-Funktionen auf der Cloud Run functions page of the Cloud console ansehen.

Wenn Sie bei der Arbeit mit Dart-Funktionen Probleme feststellen, senden Sie dem Team einen Bericht, damit wir das experimentelle Dart SDK verbessern und erweitern können.