Catch up on everthing we announced at this year's Firebase Summit. Learn more

Wyzwalacze uwierzytelniania Firebase

Możesz uruchomić Cloud Functions w odpowiedzi na utworzenie i usunięcie kont użytkowników Firebase. Na przykład możesz wysłać powitalną wiadomość e-mail do użytkownika, który właśnie utworzył konto w Twojej aplikacji. Przykłady na tej stronie są oparte na próbce, która dokładnie to robi — wysyła powitalne i pożegnalne wiadomości e-mail po utworzeniu i usunięciu konta.

Więcej przykładów przypadków użycia, zobacz Co mogę zrobić z funkcji chmurze?

Uruchom funkcję podczas tworzenia użytkownika

Można utworzyć funkcję, która wyzwala, gdy użytkownik Firebase jest tworzony za pomocą functions.auth.user().onCreate() Obsługi zdarzeń:

exports.sendWelcomeEmail = functions.auth.user().onCreate((user) => {
  // ...
});

Konta Firebase będą wyzwalać zdarzenia tworzenia użytkowników w Cloud Functions, gdy:

  • Użytkownik tworzy konto e-mail i hasło.
  • Użytkownik loguje się po raz pierwszy przy użyciu federacyjnego dostawcy tożsamości.
  • Deweloper tworzy konto za pomocą pakietu Firebase Admin SDK.
  • Użytkownik po raz pierwszy loguje się do nowej sesji uwierzytelniania anonimowego.

Chmura Funkcje zdarzenie nie jest wyzwalany, gdy użytkownik loguje się po raz pierwszy przy użyciu niestandardowego token.

Dostęp do atrybutów użytkownika

Z danych użytkownika powrócił do swojej funkcji, można uzyskać dostęp lista atrybutów użytkownika dostępne w nowo utworzonym użytkownika UserRecord obiektu. Na przykład możesz uzyskać adres e-mail i nazwę wyświetlaną użytkownika, jak pokazano:

const email = user.email; // The email of the user.
const displayName = user.displayName; // The display name of the user.

Uruchom funkcję po usunięciu użytkownika

Tak jak możesz uruchomić funkcję podczas tworzenia użytkownika, możesz odpowiadać na zdarzenia usunięcia użytkownika. Za pomocą functions.auth.user().onDelete() Obsługi zdarzeń, jak pokazano poniżej:

exports.sendByeEmail = functions.auth.user().onDelete((user) => {
  // ...
});