Was kann ich mit Cloud Functions tun?

Cloud Functions bietet Entwicklern Zugriff auf Firebase- und Google Cloud-Ereignisse sowie skalierbare Rechenleistung, um Code als Reaktion auf diese Ereignisse auszuführen. Obwohl erwartet wird, dass Firebase-Apps Cloud-Funktionen auf einzigartige Weise nutzen, um ihre einzigartigen Anforderungen zu erfüllen, könnten typische Anwendungsfälle in diese Bereiche fallen:

Sehen Sie sich die Anwendungsfälle und Beispiele für jede Kategorie an, die Sie interessiert, und fahren Sie dann mit unserem Tutorial „ Erste Schritte “ oder mit spezifischen Anleitungen für Authentifizierungsereignisse , Analyseereignisse und mehr fort. Die vollständige Liste der unterstützten Ereignistypen finden Sie in der eventType API-Referenz .

Benachrichtigen Sie Benutzer, wenn etwas Interessantes passiert

Entwickler können Cloud Functions verwenden, um Benutzer mit relevanten Informationen zu einer App zu beschäftigen und auf dem Laufenden zu halten. Stellen Sie sich beispielsweise eine App vor, die es Benutzern ermöglicht, die Aktivitäten der anderen in der App zu verfolgen. Jedes Mal, wenn sich ein Benutzer als Follower eines anderen Benutzers hinzufügt, findet ein Schreibvorgang in der Echtzeitdatenbank statt. Dann könnte dieses Schreibereignis eine Funktion zum Erstellen von Firebase Cloud Messaging (FCM)-Benachrichtigungen auslösen, um die entsprechenden Benutzer darüber zu informieren, dass sie neue Follower gewonnen haben.

Diagramm, das den unten beschriebenen App-Fluss zeigt

  1. Die Funktion wird bei Schreibvorgängen in den Echtzeitdatenbankpfad ausgelöst, in dem Follower gespeichert sind.
  2. Die Funktion erstellt eine Nachricht, die über FCM gesendet werden soll.
  3. FCM sendet die Benachrichtigungsnachricht an das Gerät des Benutzers.

Informationen zum Überprüfen des funktionierenden Codes finden Sie unter Senden von FCM-Benachrichtigungen .

Weitere interessante Anwendungsfälle für Benachrichtigungen

Führen Sie eine Datenbankbereinigung und -wartung durch

Mit der Behandlung von Cloud Functions-Datenbankereignissen können Sie Realtime Database oder Cloud Firestore als Reaktion auf das Benutzerverhalten ändern und so das System auf dem neuesten Stand und sauber halten. In einer Chatroom-App könnten Sie beispielsweise Schreibereignisse überwachen und unangemessenen oder profanen Text aus den Nachrichten der Benutzer entfernen. So könnte das funktionieren:

Diagramm, das den unten beschriebenen App-Fluss zeigt

  1. Der Datenbank-Event-Handler der Funktion wartet auf Write-Events auf einem bestimmten Pfad und ruft Event-Daten ab, die den Text aller Chat-Nachrichten enthalten.
  2. Die Funktion verarbeitet den Text, um unangemessene Sprache zu erkennen und zu entfernen.
  3. Die Funktion schreibt den aktualisierten Text zurück in die Datenbank.

Um den funktionierenden Code zu überprüfen, sehen Sie sich das Beispiel für die Textmoderation an. Dieses Beispiel bereinigt unangemessene Sprache sowie „Schreien“ in Großbuchstaben in Chatnachrichten.

Andere Anwendungsfälle für Datenbankbereinigung und -wartung

Führen Sie intensive Aufgaben in der Cloud statt in Ihrer App aus

Entwickler können Cloud Functions nutzen, um ressourcenintensive Arbeit (starke CPU oder Netzwerkarbeit), die auf dem Gerät eines Benutzers nicht praktikabel wäre, in die Google Cloud auszulagern. Sie könnten beispielsweise eine Funktion schreiben, um auf Bild-Uploads in Cloud Storage zu lauschen, das Bild auf die Instanz herunterzuladen, auf der die Funktion ausgeführt wird, es zu ändern und wieder in Cloud Storage hochzuladen. Ihre Änderungen können das Ändern der Größe, das Zuschneiden oder Konvertieren von Bildern umfassen. ImageMagick -Befehlszeilentools werden zur Verwendung mit Cloud Functions bereitgestellt, um diese Arbeit zu vereinfachen.

Diagramm, das den unten beschriebenen App-Fluss zeigt

  1. Eine Funktion wird ausgelöst, wenn eine Bilddatei in Cloud Storage hochgeladen wird.
  2. Die Funktion lädt das Bild herunter und erstellt eine Thumbnail-Version davon.
  3. Die Funktion schreibt diesen Thumbnail-Speicherort in die Datenbank, sodass eine Client-App ihn finden und verwenden kann.
  4. Die Funktion lädt das Miniaturbild an einem neuen Ort zurück in Cloud Storage hoch.
  5. Die App lädt den Thumbnail-Link herunter.

Eine exemplarische Vorgehensweise für ein Bildverarbeitungsbeispiel finden Sie unter Behandeln von Speicherereignissen .

Weitere Beispiele für Batch-Jobs in der Firebase-Cloud

Integration mit Diensten und APIs von Drittanbietern

Cloud Functions kann dazu beitragen, dass Ihre App besser mit anderen Diensten zusammenarbeitet, indem Web-APIs aufgerufen und verfügbar gemacht werden. Beispielsweise könnte eine App, die für die Zusammenarbeit bei der Entwicklung verwendet wird, GitHub-Commits in einem Arbeitsgruppen-Chatroom posten.

Diagramm, das den unten beschriebenen App-Fluss zeigt

  1. Ein Benutzer überträgt Commits an ein GitHub-Repository.
  2. Eine HTTPS-Funktion wird über die GitHub-Webhook-API ausgelöst .
  3. Die Funktion sendet eine Benachrichtigung über den Commit an einen Team-Slack-Kanal.

Andere Möglichkeiten zur Integration mit Diensten und APIs von Drittanbietern