Erste Schritte mit dem experimentellen Dart SDK

Mit der experimentellen Dart-Unterstützung in Cloud Functions for Firebase können Sie Full-Stack-Anwendungen mit Flutter und Dart erstellen. Mit dem neuen Firebase Admin Dart SDK können Sie mit anderen Firebase-Diensten kommunizieren.

Wenn Sie mit Dart-Funktionen beginnen möchten, führen Sie die Einrichtungsaufgaben in diesem Leitfaden aus und sehen Sie sich dann die Dart-HTTP- und aufrufbaren Funktionen an.

Vorbereitung

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

 `firebase --version`

Test in der Firebase-Befehlszeile aktivieren

firebase experiments:enable dartfunctions

Projekt initialisieren

  1. Ausführen:

    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 Code an, der in functions/bin/server.dart (oder Ihrem Einstiegspunkt) generiert wurde. Dieser Code zeigt eine einfache HTTP-Funktion.

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

Lokal testen

firebase emulators:start

Sobald die Local Emulator Suite hochgefahren ist, wird eine Protokollzeile wie functions http function initialized (http://127.0.0.1:5001/<url>) angezeigt. Laden Sie diese URL in Ihren Browser, um die lokal emulierte Dart-Funktion aufzurufen.

Wenn Sie Ihren Dart-Code bearbeiten, erkennt Firebase Local Emulator Suite die Änderung und lädt die 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, um ihn in Cloud Build zu erstellen, führt die Firebase-Befehlszeile einen Dart-Kompilierungsschritt auf Ihrem Entwicklungscomputer aus und lädt die generierte Binärdatei direkt in Cloud Run-Funktionen hoch.

Wenn die Bereitstellung abgeschlossen ist, wird eine Logzeile wie Function URL (hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app angezeigt.

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

Nächste Schritte

Beschränkungen

  • Der Trigger onCall kann bereitgestellt, aber nicht von 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, z. B. Firestore-Trigger, können in der lokalen Emulator-Suite ausgeführt, aber nicht bereitgestellt werden.
  • In der Firebase-Konsole werden Dart-Funktionen während des experimentellen Release nicht angezeigt. Sie können Dart-Funktionen stattdessen auf der Seite Cloud Run-Funktionen der Cloud Console aufrufen.

Wenn Sie bei der Arbeit mit Dart-Funktionen Probleme feststellen, können Sie dem Team einen Bericht senden, um uns bei der Verbesserung und Erweiterung des experimentellen Dart SDK zu helfen.