Was kann ich mit Cloud Functions tun?

Cloud Functions gewährt Entwicklern Zugriff auf Firebase und Google Cloud Events und skalierbare Rechenleistung, um Code als Reaktion auf diese Ereignisse auszuführen. Es ist zwar dass Firebase-Apps Cloud Functions auf einzigartige Weise nutzen werden, ihre individuellen Anforderungen erfüllen, können typische Anwendungsfälle in die folgenden Bereiche fallen:

Sehen Sie sich die Anwendungsfälle und Beispiele für jede relevante Kategorie an. und fahren Sie dann mit der Anleitung Erste Schritte fort. oder bestimmte Anleitungen für Authentifizierungsereignisse Analytics-Ereignisse usw.

Nutzer über interessante Ereignisse informieren

Entwickler können Cloud Functions verwenden, um das Interesse der Nutzer auf dem neuesten Stand zu halten mit relevanten Informationen über eine App. Stellen Sie sich zum Beispiel eine App vor, ermöglicht es Nutzern, die Aktivitäten der anderen in der App zu verfolgen. Jedes Mal, wenn ein Nutzer sich als Mitleser eines anderen Nutzers hinzufügt, erfolgt ein Schreibvorgang im Realtime Database. Dann könnte dieses Schreibereignis eine Funktion auslösen, um Firebase Cloud Messaging-Benachrichtigungen (FCM) zu erstellen, damit die entsprechenden wissen Nutzer, dass sie neue Follower gewonnen haben.

Diagramm, das den unten beschriebenen Anwendungsfluss zeigt

  1. Die Funktion wird beim Schreiben in den Pfad Realtime Database ausgelöst, wobei Follower gespeichert.
  2. Die Funktion erstellt eine Nachricht, die über FCM gesendet werden soll.
  3. FCM sendet die Benachrichtigungsnachricht an das Gerät des Nutzers.

Den funktionierenden Code finden Sie im Beispielcode in GitHub:

Weitere interessante Anwendungsfälle für Benachrichtigungen

  • Senden Sie Bestätigungs-E-Mails an Nutzer, die sich für einen Newsletter anmelden.
  • Senden Sie eine Willkommens-E-Mail, wenn ein Nutzer die Registrierung abschließt.
  • Sendet eine SMS-Bestätigung, wenn ein Nutzer ein neues Konto erstellt.

Datenbankbereinigung und -wartung ausführen

Mit der Cloud Functions-Datenbankereignisbehandlung können Sie Realtime Database oder Cloud Firestore als Reaktion auf das Nutzerverhalten ändern und das System im gewünschten Status halten. Sie können beispielsweise Schreibereignisse überwachen und das Format bestimmter Zeichenfolgen im Feld „user“ Nachrichten. Das könnte so funktionieren:

Diagramm, das den unten beschriebenen Anwendungsfluss zeigt

  1. Der Datenbank-Event-Handler der Funktion wartet auf Schreibereignisse für eine bestimmte Pfad und ruft Ereignisdaten ab, die den Text einer Nachricht enthalten.
  2. Die Funktion verarbeitet den Text, um Zeichenfolgen in Großbuchstaben zu ändern.
  3. Die Funktion schreibt den aktualisierten Text zurück in die Datenbank.

Den funktionierenden Code finden Sie im Beispielcode in GitHub:

Weitere Anwendungsfälle für die Bereinigung und Wartung von Datenbanken

  • Inhalte eines gelöschten Nutzers aus Realtime Database entfernen
  • Begrenzen Sie die Anzahl der untergeordneten Knoten in einer Firebase-Datenbank.
  • Anzahl der Elemente in einer Realtime Database-Liste erfassen
  • Kopieren Sie Daten aus Realtime Database in Google Cloud BigQuery.
  • Text in Emojis umwandeln
  • Berechnete Metadaten für Datenbankeinträge verwalten.

Komplexe Aufgaben in der Cloud statt in der Anwendung ausführen

Sie können Cloud Functions für die Übertragung an die Google ressourcenintensiven Cloud-Aufgaben (hohe CPU- oder Netzwerkressourcen) anstelle von Ausführung auf dem Gerät der Nutzenden verbessern und so die Reaktionsfähigkeit Ihrer App verbessern. Sie könnten z. B. eine Funktion Um auf Image-Uploads in Cloud Storage zu warten, laden Sie das Image auf die Instanz herunter die Funktion ausführen, ändern und dann wieder in Cloud Storage hochladen. Ihr Änderungen können z. B. das Anpassen der Größe, Zuschneiden oder Konvertieren von Bildern mit Tools sein. wie sharp oder Kissen.

Diagramm, das den unten beschriebenen Anwendungsfluss 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 Miniaturansicht davon.
  3. Die Funktion schreibt diese Miniaturansicht in die Datenbank, damit eine Client-App sie finden und verwenden kann.
  4. Die Funktion lädt das Thumbnail an einem neuen Speicherort wieder in Cloud Storage hoch.
  5. Die App lädt den Thumbnail-Link herunter.

Eine Schritt-für-Schritt-Anleitung für ein Bildverarbeitungsbeispiel finden Sie in der Anleitung zum Cloud Storage-Ereignisse verarbeiten.

Weitere Beispiele für Batchjobs in der Firebase-Cloud

  • Regelmäßig nicht verwendete Firebase-Konten löschen Node.js | Python
  • Hochgeladene Bilder automatisch sichern Node.js | Python
  • Bulk-E-Mails an Nutzer senden
  • Daten in regelmäßigen Abständen aggregieren und zusammenfassen.
  • Eine Warteschlange mit ausstehenden Arbeiten verarbeiten

In Dienste und APIs von Drittanbietern einbinden

Cloud Functions kann dazu beitragen, dass deine App besser mit anderen Diensten zusammenarbeitet, indem sie Web-APIs aufrufen und freigeben. Eine App für die Zusammenarbeit an GitHub-Commits in einem Arbeitsgruppen-Chatroom veröffentlichen.

Diagramm, das den unten beschriebenen Anwendungsfluss zeigt

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

Andere Möglichkeiten zur Einbindung in Dienste und APIs von Drittanbietern

  • Mit der Google Cloud Vision API hochgeladene Bilder analysieren und taggen
  • Nachrichten mit Google Übersetzer übersetzen lassen.
  • Verwenden Sie die benutzerdefinierte Authentifizierung, um Nutzer anzumelden.
  • Senden Sie für Realtime Database-Schreibvorgänge eine Anfrage an einen Webhook.
  • Aktivieren Sie die Volltextsuche für Realtime Database-Elemente.
  • Verarbeiten Sie Zahlungen von Nutzern.
  • Sie können automatische Antworten auf Telefonanrufe und SMS erstellen.
  • Erstellen Sie mit Google Assistant einen Chatbot.