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. 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, ob Sie eine Version der Firebase-Befehlszeile haben, die Dart in Cloud Functions for Firebase mit dem Flag --version unterstützt:

 `firebase --version`

Test in der Firebase-CLI aktivieren

firebase experiments:enable dartfunctions

Projekt initialisieren

  1. Lauf: 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 HttpsOptions-Konstruktor auf 10 festgelegt. Weitere Informationen zu Laufzeitoptionen finden Sie unter Laufzeitoptionen festlegen.

Lokal testen

firebase emulators:start

Sobald das 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 Ihrem Browser, um Ihre lokal emulierte Dart-Funktion aufzurufen.

Wenn Sie Ihren Dart-Code bearbeiten, erkennt 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, um ihn in Cloud Build zu erstellen, 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 Abschluss der Bereitstellung 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 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, bei denen Funktionen anhand des Namens identifiziert werden. 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 lokalen Emulator Suite ausgeführt, aber nicht bereitgestellt werden.
  • In der Firebase-Konsole werden während der experimentellen Veröffentlichung keine Dart-Funktionen angezeigt. Dart-Funktionen können Sie stattdessen auf der Seite Cloud Run-Funktionen der Cloud-Konsole aufrufen.

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