我有一个关于 firebase 电子邮件验证如何工作的问题。
案例:
已经登录的用户(在设备 A 中)发生了什么? firebase 是将他们注销还是只是验证新电子邮件,但仍使用当前用户登录?
最佳答案
电子邮件验证发生在带外,在重新加载之前不会影响任何现有的 Firebase 状态 .如果用户验证了他们的电子邮件,您必须调用 firebase.auth().currentUser.reload()
更新 emailVerified
属性(property)。如果您使用带有 emailVerified
的 Firebase 规则字段,您需要在验证后强制刷新 token ( firebase.auth().currentUser.getToken(true)
)。您可以使用 Firebase 实时数据库在电子邮件验证中设置一些标志,并在现有 session 中检测它以强制用户重新加载。这将需要您构建自己的自定义电子邮件验证处理程序:https://firebase.google.com/docs/auth/custom-email-handler
关于Firebase 电子邮件验证行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41326951/