没有FirebaseUser的电子邮件验证

时间:2020-06-02 10:59:41

标签: firebase flutter firebase-authentication

我正在尝试在没有firebaseUser的情况下发送验证电子邮件,这可能吗? 我知道我可以使用user.sendEmailVerification()方法做到这一点,但是我可以仅通过从文本字段中发送电子邮件来做到这一点吗?

1 个答案:

答案 0 :(得分:1)

根据我所知道的以及我从文档中所读的内容,看来不可能做到这一点。如果您要发送使用Firebase电子邮件验证服务的电子邮件验证,则需要Firebase用户(也就是在Firebase平台内通过身份验证的用户)。

好吧,不要失去希望,因为有很多解决方法可以做到这一点。为此,我将使用Firebase Cloud Functions创建无服务器API平台。我将Firebase Cloud Functions与Firebase Admin SDK连接在一起(如果我没记错的话,它也可以访问其他Firebase服务)。

我使用诸如SendGrid之类的电子邮件服务提供商将电子邮件发送到指定的电子邮件地址(该应用程序是从用户输入的电子邮件中获得的),并提供一个验证链接(在发送到指定电子邮件地址的电子邮件中) )。然后,在云功能中,您可以利用Firebase Admin SDK更改验证状态。

这种方法非常灵活,因为它不仅可以用于通过Firebase身份验证来验证用户。

希望有帮助。如果您不清楚,请发表评论。 编码愉快。

编辑:再次仔细阅读您的问题后,我意识到我的答案并不完全正确。不知何故,您仍然需要在Firebase身份验证数据库中添加特定用户,您不希望手动添加该特定用户,而让您的应用程序这样做。也许您可以在此问题上使用Firebase Admin SDK。您可以阅读Firebase官方文档以获取有关Admin SDK的更多信息。