欢迎参加我们将于 2022 年 10 月 18 日举办的 Firebase 峰会(线上线下同时进行),了解 Firebase 如何帮助您加快应用开发速度、满怀信心地发布应用并在之后需要时轻松地扩大应用规模。立即报名

Firebase Authentication 触发器

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

您可以触发 Cloud Functions 函数来响应创建和删除 Firebase 用户帐号操作。例如,如果用户刚在您的应用中创建了帐号,您可以向其发送欢迎电子邮件。参考此页面上的示例 - 在创建和删除帐号时发送欢迎和告别电子邮件。

如需查看更多使用场景示例,请参阅 Cloud Functions 有哪些用途?

在创建用户时触发函数

您可以使用 functions.auth.user().onCreate() 事件处理脚本创建一个会在创建 Firebase 用户时触发的函数:

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

在以下情况下,Firebase 帐号将触发 Cloud Functions 函数的用户创建事件:

  • 用户创建了电子邮件帐号和密码。
  • 用户首次通过联合身份提供方登录。
  • 开发者使用 Firebase 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) => {
  // ...
});

触发屏蔽函数

如果您已升级到带有 Identity Platform 的 Firebase Authentication,则可以使用屏蔽 Cloud Functions 函数来扩展 Firebase Authentication。

通过屏蔽函数,您可以执行自定义代码,以修改用户注册或登录应用的结果。例如,您可以禁止不符合特定条件的用户通过身份验证,或者首先对用户的信息进行更新,然后再将此信息返回到您的客户端应用。