Firebase验证链接-使用本地主机

时间:2018-07-15 12:02:35

标签: javascript angular firebase firebase-authentication angularfire2

我想将自己的验证链接传递给用户电子邮件(而不是firebaseapp.com中的默认链接),要编辑该链接,我转到了模板,并从我的项目传递了一条路线。 enter image description here

现在,当我单击电子邮件链接时,emailVerified的值仍然是false。我订阅了映射的Observable<User>,以查看用户的当前状态。 像这样

映射到我的OAuthService constructor
    this.user = this.afAuth.authState.pipe(switchMap(user => {
      if (user) {
        console.log('is verified:', user.emailVerified);
        return this.afs.doc<User>(`users/${user.uid}`).valueChanges();
      } else {
        return of(null);
      }
  })

如何发送emailVerification方法?如下:

  public register(register: RegisterDataModel): void {
    this.afAuth.auth.createUserWithEmailAndPassword(register.email, register.password)
      .then(() => {
        const user = this.afAuth.auth.currentUser;
        user.updateProfile({displayName: register.username, photoURL: null}).then(() => {
          this.setUserDoc(user).then(() => {
            user.sendEmailVerification().then(() => console.log('please verify your email'))
              .catch((err) => console.log(err));
          });
        });
      }).catch(
      (err) => console.log(err));
  }

有人知道我在做什么错吗?即使在电子邮件上,链接的格式也不正确。链接像这样到达: enter image description here

您可能会看到,firebase将localhost链接发送了两次。

0 个答案:

没有答案