【问题标题】:Firebase: Observe email verification status in real timeFirebase:实时观察电子邮件验证状态
【发布时间】:2018-05-10 11:25:16
【问题描述】:

如果用户验证了他的电子邮件,我如何能够实时检查?

我的流程是这样的:

  1. 用户注册
  2. 已发送电子邮件
  3. 用户看到“请验证您的电子邮件”通知

现在我想:

  1. setInterval -> 检查电子邮件是否经过验证
  2. 如果已验证,则显示“电子邮件已验证”通知

为此,我需要一个从 firebase 获取用户数据的方法。 通常你只需使用 onAuthStateChanged 回调来获取用户数据,但我需要显式获取当前数据。

我该怎么做?

【问题讨论】:

    标签: firebase firebase-authentication


    【解决方案1】:

    找到方法了!

    firebase.auth().currentUser.reload()
    

    将获取当前用户数据。所以我要做的就是:

                  this.checkForVerifiedInterval = setInterval(() => {
                    firebase.auth()
                      .currentUser
                      .reload()
                      .then(ok => {
                        if (firebase.auth().currentUser.emailVerified) {
                          this.props.history.push("/verification-email-verified")
                          window.Materialize.toast("Email verified.", 3000)
                          clearInterval(this.checkForVerifiedInterval)
                        }
                      })
                  }, 1000)
    

    【讨论】:

      猜你喜欢
      • 2018-07-09
      • 2018-11-26
      • 1970-01-01
      • 1970-01-01
      • 2017-05-23
      • 2013-06-07
      • 1970-01-01
      • 2018-08-26
      相关资源
      最近更新 更多