【发布时间】:2020-09-20 19:58:47
【问题描述】:
我正在尝试在没有 firebaseUser 的情况下发送验证电子邮件,这可能吗? 我知道我可以使用 user.sendEmailVerification() 方法来做到这一点,但我可以通过从文本字段中发送电子邮件来做到这一点吗?
【问题讨论】:
标签: firebase flutter firebase-authentication
我正在尝试在没有 firebaseUser 的情况下发送验证电子邮件,这可能吗? 我知道我可以使用 user.sendEmailVerification() 方法来做到这一点,但我可以通过从文本字段中发送电子邮件来做到这一点吗?
【问题讨论】:
标签: firebase flutter firebase-authentication
根据我所知道的以及我从文档中读到的内容,看起来不可能做到这一点。如果您要发送使用 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 的更多信息。
【讨论】: