Вы можете запускать функции в ответ на создание и удаление учётных записей пользователей Firebase . Например, вы можете отправить приветственное письмо пользователю, только что создавшему учётную запись в вашем приложении. Примеры на этой странице основаны на примере, который делает именно это — отправляет приветственные и прощальные письма при создании и удалении учётной записи.
Дополнительные примеры использования см. в разделе Что можно сделать с помощью Cloud Functions ?.
Запустить функцию при создании пользователя
Вы можете создать функцию, которая срабатывает при создании пользователя Firebase , используя обработчик событий functions.auth.user().onCreate()
:
exports.sendWelcomeEmail = functions.auth.user().onCreate((user) => { // ... });
Учетные записи Firebase будут инициировать события создания пользователей для Cloud Functions когда:
- Пользователь создает учетную запись электронной почты и пароль.
- Пользователь впервые входит в систему, используя федеративный поставщик удостоверений.
- Разработчик создает учетную запись с помощью Admin SDK.
- Пользователь впервые входит в новый сеанс анонимной аутентификации.
Событие Cloud Functions не запускается, когда пользователь впервые входит в систему, используя пользовательский токен.
Доступ к атрибутам пользователя
Из данных пользователя, возвращаемых вашей функции, вы можете получить доступ к списку атрибутов пользователя, доступных в только что созданном объекте UserRecord
. Например, вы можете получить адрес электронной почты и отображаемое имя пользователя, как показано ниже:
const email = user.email; // The email of the user. const displayName = user.displayName; // The display name of the user.
Запустить функцию при удалении пользователя
Так же, как вы можете вызвать функцию при создании пользователя, вы можете реагировать на события удаления пользователя. Используйте обработчик событий functions.auth.user().onDelete()
как показано ниже:
exports.sendByeEmail = functions.auth.user().onDelete((user) => { // ... });
Функции блокировки триггера
Если вы перешли на Firebase Authentication with Identity Platform , вы можете расширить Firebase Authentication , заблокировав Cloud Functions .
Блокирующие функции позволяют выполнять пользовательский код, который изменяет результат регистрации или входа пользователя в ваше приложение. Например, вы можете запретить аутентификацию пользователя, если он не соответствует определённым критериям, или обновить информацию о пользователе перед её возвратом в клиентское приложение.