Firebase密码重置电子邮件会发出错误" auth / user-not-found"对于新创建的用户

时间:2017-10-11 10:38:29

标签: angular email firebase-authentication

我一直在尝试创建一个管理员添加用户的系统,然后创建随机密码并将详细信息添加到数据库中。

然后我会立即发送一封包含重置密码电子邮件模板的电子邮件。

我收到此错误:"auth/user-not-found"

  1. 我只会在承诺成功返回时触发重置密码电子邮件。
  2. 我还尝试在3秒后触发电子邮件功能,但仍然收到相同的消息。
  3. 用户名已成功创建。
  4. 有什么建议吗?是否只有在确认电子邮件可以使用时才会使用?

    编辑:

    要再次初始化应用程序,我在服务中使用了它:

    constructor(private errorCodes: ErrorCodesService, private afDB: AngularFireDatabase) {
        this.fb = {
          apiKey: "***************",
          authDomain: "********************",
          databaseURL: "https://*****.firebaseio.com",
          projectId: "***********",
          storageBucket: "*********.appspot.com",
          messagingSenderId: "***********"
    
        };
    
        this.varSecondaryAccess = firebase.initializeApp(this.fb, 'secondary');
      }
    

    之前,我在此服务中创建了User,然后从另一个服务更新了Realtime数据库。我想也许是因为其他服务从app.module.ts访问初始化的应用程序。所以看完评论后,这让我思考。

    createUser(email, pey, formValue) {
        this.emailId=formValue.email;
        this.varSecondaryAccess.auth().createUserWithEmailAndPassword(email, pey)
          .then(user => {
            this.newForm = {};
            this.newForm[user.uid] = formValue;
            console.log(this.newForm);
            this.updateTable();
          })
          .catch(error => "error");
      }
    
      updateTable() {
        this.afDB.object('/users/').update(this.newForm)
          .then(() => {
            console.log("Table updated")
            this.ResetPassword()
          })
          .catch(error => console.log(error));
      }
    
      ResetPassword() {
        alert(this.emailId);
        this.varSecondaryAccess.auth().sendPasswordResetEmail(this.emailId)
          .then(() => {
            console.log("email sent");
          })
          .catch((error) => console.log(error));
      }
    

    更新:现在我收到"发送的电子邮件" console.log消息但电子邮件尚未发送。我检查了垃圾邮件和一切。

0 个答案:

没有答案