微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sendEmailVerification 与 sendSignInLinkToEmail 使用 firebase 进行电子邮件验证

如何解决sendEmailVerification 与 sendSignInLinkToEmail 使用 firebase 进行电子邮件验证

我正在尝试对现有项目设置电子邮件验证。我偶然发现了两个不同的文档,它们为此使用了两种不同的方法,但仍然遵循相同的流程

  1. sendEmailVerification
  2. sendSignInLinkToEmail

我看到的唯一区别是我们必须在使用 ActionCodeSettings 时专门创建 sendSignInLinkToEmail 对象,以便指定它用于验证,而使用 {{ 时不需要这样做1}}。

我假设,文档解释的主要区别在于,一个用于用户进行身份验证,另一个用于验证用户。尽管 this security StackExchange post 帮助我了解了一点差异,但我仍然对它在用户登录体验的上下文中如何区分感到困惑

解决方法

一个用于身份验证,另一个用于验证电子邮件。

sendEmailVerification 是一种一次性事件,用于验证用户的电子邮件地址是否有效。它在 User object 中设置 emailVerified 值。一旦电子邮件被验证,你就不会再打电话给它。这是在注册过程中使用的。

sendSignInLinkToEmail 是一种身份验证方法,允许用户通过单击通过电子邮件发送给他们的链接进行登录,而不是输入电子邮件/密码或通过联合帐户登录。如果这是用户首选的身份验证方法,则每次用户想要登录时都会调用此方法。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。