您可以触发函数来响应 Firebase 用户账号的创建和删除事件。例如,如果用户刚在您的应用中创建了账号,您可以向其发送欢迎电子邮件。参考此页面上的示例 - 在创建和删除账号时发送欢迎和告别电子邮件。
如需查看更多应用场景示例,请参阅“Cloud Functions 有哪些用途?”。
在创建用户时触发函数
您可以创建使用 functions.auth.user().onCreate()
事件处理脚本创建 Firebase 用户时触发的函数。
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,则可以使用 Cloud Functions 屏蔽函数扩展 Firebase Authentication。
通过屏蔽函数,您可以执行自定义代码,以修改用户注册或登录应用的结果。例如,您可以禁止不符合特定标准的用户通过身份验证,或者首先对用户的信息进行更新,然后再将此信息返回到您的客户端应用。