相关疑难解决方法(0)

如何使用Firebase发送验证邮件?

我正在使用Firebase的电子邮件和密码方法注册我的用户.像这样:

mAuth.createUserWithEmailAndPassword(email, password)

.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
    @Override
    public void onComplete(@NonNull Task<AuthResult> task) {

    if (task.isSuccessful()) {

        FirebaseUser signed = task.getResult().getUser();

        writeNewUser(signed.getUid());

        new android.os.Handler().postDelayed(

                new Runnable() {
                    public void run() {

                        updateUser(b);

                    }
                }, 3000);

    } else {

        new android.os.Handler().postDelayed(

                new Runnable() {
                    public void run() {

                        onSignupFailed();

                    }
                }, 3000);

    }

    }
});
Run Code Online (Sandbox Code Playgroud)

用户的电子邮件成功注册后,我希望Firebase发送验证邮件.我知道这可以使用Firebase sendEmailVerification.除了发送此电子邮件之外,我希望在验证电子邮件之前禁用该用户的帐户.这也需要使用Firebase的isEmailVerified功能.但是,我没有成功让Firebase发送验证邮件,我无法弄清楚是否要禁用并启用发送验证邮件的帐户以及验证后.

android firebase firebase-authentication

16
推荐指数
3
解决办法
3万
查看次数

在Android上使用Firebase 3.0进行电子邮件验证

我知道我们可以使用Firebase Auth 3.0验证用户的电子邮件.我无法在Android上找到任何有关电子邮件验证的文档.我能够找到适用于iOS和网络的相同内容,但不适用于Android.任何指向文档的链接都会有所帮助.

电邮类型

从图像中可以清楚地看到,一旦用户登录,他就会在电子邮件中暗示他确认他的订阅.我已经订阅了自己,并在Auth选项卡的用户部分进行了验证,我可以看到我的邮件ID和firebase生成了唯一的用户ID.这里缺少的是我的电子邮件ID的确认电子邮件.有人试过这个还是我太早尝试这个?谢谢你的帮助.

android email-verification firebase firebase-authentication

8
推荐指数
2
解决办法
8298
查看次数

单击电子邮件验证链接后,user.emailVerified不会更改

学习后,可以在最新的Firebase中发送电子邮件验证,尽管文档丢失了,但我想自己进行测试。

使用以下代码段:

  Auth.$onAuthStateChanged(function(firebaseUser) {
    if (firebaseUser) {
      console.log(firebaseUser);
      if (firebaseUser.emailVerified) {
        // console.log(firebaseUser.emailVerified); 
        toastr.success('Email verified');
      } else {
        toastr.info('Do verify email');
      }
    }
  })
Run Code Online (Sandbox Code Playgroud)

console.log(firebaseUser.emailVerified)返回false,总是,虽然发送的验证已启动,收到的邮件,并点击。

使用电子邮件登录后,我立即检查是否已验证用户,如果未通过验证,则应发送电子邮件:

Auth.$signInWithEmailAndPassword(email, password)
  .then(function(firebaseUser) {
    if (!firebaseUser.emailVerified) {
      firebaseUser.sendEmailVerification();
      console.log('Email verification sent');
    }
    $state.go('home');
  })
Run Code Online (Sandbox Code Playgroud)

在my https://console.firebase.google.com/project/my-app-name/authentication/emails下,默认情况下所有内容均为默认值,其中的验证链接为:

Follow this link to verify your email address. https://my-app-name.firebaseapp.com/__/auth/handler?mode=<action>&oobCode=<code>

我用来注册的电子邮件会收到验证电子邮件,但是,单击链接并不能将更改user.emailVerified为true。

这里概述所有步骤,还是在文档中找不到另一个步骤?

javascript firebase firebase-authentication

7
推荐指数
2
解决办法
5364
查看次数