获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

Firebase 身份验证触发器

您可以触发 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 身份验证,则可以使用阻止 Cloud Functions扩展 Firebase 身份验证。

阻塞函数让您可以执行自定义代码来修改用户注册或登录到您的应用程序的结果。例如,如果用户不符合特定条件,您可以阻止他们进行身份验证,或者在将用户信息返回到您的客户端应用程序之前更新用户信息。