Cloud Functions daje programistom dostęp do Firebase i Google Cloud wydarzenia, a także do uruchamiania kodu w odpowiedzi na te zdarzenia. Aplikacje Firebase będą wykorzystywać funkcje Cloud Functions w niepowtarzalny sposób, aby spełniać ich unikalne wymagania. Typowe przypadki użycia mogą należeć do tych obszarów:
- Powiadamianie użytkowników, gdy dzieje się coś interesującego.
- Wykonaj czyszczenie i konserwację bazy danych.
- Wykonywanie intensywnych zadań w chmurze, a nie w aplikacji
- Integracja z usługami i interfejsami API innych firm
Zapoznaj się z przypadkami użycia i przykładami dotyczącymi każdej interesującej Cię kategorii i przejdź do samouczka Pierwsze kroki. lub konkretnych instrukcji, w przypadku zdarzeń uwierzytelniania, zdarzenia analityczne itp.
Powiadamianie użytkowników, gdy wydarzy się coś interesującego
Deweloperzy mogą używać Cloud Functions, aby utrzymywać zaangażowanie użytkowników i dbać o aktualność z istotnymi informacjami o aplikacji. Rozważmy na przykład aplikację, która pozwala użytkownikom śledzić nawzajem swoje działania w aplikacji. Za każdym razem, gdy użytkownik doda siebie jako obserwatora innego użytkownika, zapis ma miejsce w Realtime Database Następnie to zdarzenie zapisu może wywołać funkcję tworzenia powiadomień Firebase Cloud Messaging (FCM), aby powiadomić odpowiednich użytkowników o tym, że zdobyli nowych obserwatorów.
- Funkcja wyzwala się przy zapisach w ścieżce Realtime Database, gdzie .
- Funkcja tworzy wiadomość do wysłania za pomocą FCM.
- FCM wysyła powiadomienie na urządzenie użytkownika.
Aby sprawdzić działający kod, zobacz przykładowy kod na GitHubie:
- Node.js: fcm-notifications
- Python: fcm-notifications
Inne interesujące przypadki użycia powiadomień
- Wyślij e-maile z potwierdzeniem do użytkowników, którzy subskrybują newsletter.
- Wyślij powitalnego e-maila, gdy użytkownik ukończy rejestrację.
- Wysyłaj SMS-a z potwierdzeniem, gdy użytkownik utworzy nowe konto.
Oczyszczanie i konserwacja baz danych
Dzięki obsłudze zdarzeń bazy danych Cloud Functions można modyfikować Realtime Database lub Cloud Firestore w odpowiedzi na zachowanie użytkownika, dzięki czemu system będzie działać zgodnie z oczekiwaniami. stanu. Można na przykład monitorować zdarzenia zapisu i zmieniać format (na przykład zmień wszystkie ciągi na wielkie litery) określonych ciągów w polu D wiadomości. Jak to działa:
- Moduł obsługi zdarzeń bazy danych funkcji nasłuchuje zdarzeń zapisu w określonym i pobiera dane zdarzenia zawierające tekst wiadomości.
- Funkcja ta przetwarza tekst, zmieniając ciągi tekstowe na wielkie litery.
- Funkcja zapisuje zaktualizowany tekst z powrotem w bazie danych.
Aby sprawdzić działający kod, przejdź do przykładowego kodu na GitHubie:
- Node.js: uppercase-rtdb
- Python: uppercase-rtdb
Inne przypadki użycia związanych z dezynfekcją i konserwacją baz danych
- Usuń trwale treści usuniętego użytkownika z Realtime Database.
- Ogranicz liczbę węzłów podrzędnych w bazie danych Firebase.
- Umożliwia śledzenie liczby elementów na liście Realtime Database.
- Skopiuj dane z instancji Realtime Database do Google Cloud BigQuery.
- Konwertuj tekst na emotikony.
- Zarządzanie obliczonymi metadanymi dla rekordów bazy danych.
Wykonuj intensywne zadania w chmurze, a nie w aplikacji
Możesz skorzystać z Cloud Functions, aby przenieść swoje zasoby do Google praca wymaga dużych nakładów pracy w chmurze (obciążenie procesora lub sieci) zamiast jej uruchamiania na urządzeniu użytkownika, poprawiając responsywność aplikacji. Możesz na przykład napisać funkcję aby nasłuchiwać przesłanych obrazów do usługi Cloud Storage, pobierz obraz do instancji uruchom ją, zmodyfikuj i prześlij z powrotem do Cloud Storage. Twoje modyfikacje mogą obejmować zmianę rozmiaru, przycięcie lub przekonwertowanie obrazów za pomocą narzędzi jak sprzed lub Poduszka.
- Funkcja jest aktywowana po przesłaniu pliku graficznego do Cloud Storage.
- Funkcja pobiera obraz i tworzy jego wersję miniatury.
- Funkcja zapisuje lokalizację miniatury w bazie danych, aby aplikacja kliencka mogła ją znaleźć i użyć.
- Funkcja przesyła miniaturę z powrotem do usługi Cloud Storage w nowej lokalizacji.
- Aplikacja pobierze link do miniatury.
Szczegółowy przewodnik dotyczący przetwarzania obrazu znajdziesz w przewodniku obsługi zdarzeń Cloud Storage.
Inne przykłady zadań wsadowych w chmurze Firebase
- Okresowo usuwaj nieużywane konta Firebase Node.js | Pythona.
- Automatyczne tworzenie kopii zapasowych przesłanych obrazów Node.js | Pythona.
- Wysyłaj zbiorcze e-maile do użytkowników.
- Okresowo agreguj i podsumuj dane.
- przetwarzać kolejkę oczekujących zadań;
Integracja z usługami i interfejsami API innych firm
Cloud Functions może pomóc Twojej aplikacji lepiej współpracować z innymi usługami przez wywoływanie i wyświetlanie interfejsów API w internecie. Na przykład aplikacja używana do współpracy nad rozwojem może publikować commity w GitHubie w pokoju czatu grupy roboczej.
- Użytkownik przesyła zatwierdzenia do repozytorium GitHub.
- Funkcja HTTPS jest aktywowana za pomocą interfejsu API webhooka GitHub.
- Funkcja wysyła powiadomienie o zatwierdzeniu do kanału zespołu na Slacku.
Inne sposoby integracji z usługami i interfejsami API innych firm
- Użyj interfejsu Google Cloud Vision API do analizowania przesłanych obrazów i oznaczania ich tagami.
- Tłumaczenie wiadomości za pomocą Tłumacza Google.
- Używaj niestandardowego uwierzytelniania do logowania użytkowników.
- Wyślij żądanie do webhooka podczas zapisu Realtime Database.
- Włącz wyszukiwanie pełnotekstowe w elementach Realtime Database.
- przetwarzać płatności od użytkowników;
- tworzyć automatyczne odpowiedzi na połączenia telefoniczne i SMS-y.
- utworzyć czatbota za pomocą Asystenta Google,