删除用户身份验证的Firebase角度5

时间:2018-05-04 22:24:36

标签: firebase authentication firebase-realtime-database angular5

我想删除由您的KEY认证的用户,知道我是管理员,我创建了一个authservice,并在userService与注册用户关联后

enter image description here

现在在数据库中我有关联用户 enter image description here

现在我的代码中有 Firts,我创建了方法auth以在auth.service.ts中创建用户

    createUser(user: any, path: string) {
    return this.afu.auth.createUserWithEmailAndPassword(user.email, user.password)
                                .then(() => {
                                  return this.service.save(user, path);
                                })
                                .catch((e) => console.log(e));
  }

此方法创建用户身份验证并在数据库中创建用户,调用方法save

    save(user: any, path: string) {
    const createdAt = new Date();
    return new Promise((resolve, reject) => {
      this.db.list(this.PATH + path)
            // .push(user)
              // console.log(createdAt)
            .push({ name: user.name, email: user.email, role: user.role_id, status: user.status, created_at: createdAt  })
            .then(() => resolve())
    })
  }

所以,我必须在我的方法

中用KEY删除这两个寄存器
    remove(key: string, path: string) {
    return this.db.list(this.PATH + path).remove(key);
  }

记住,我是管理员

1 个答案:

答案 0 :(得分:1)

根据您的评论,我了解您希望"从身份验证"中删除用户。使用User的delete()方法,请参阅https://firebase.google.com/docs/reference/js/firebase.User

使用Auth服务界面的currentUser()方法获取当前用户,请参阅https://firebase.google.com/docs/reference/js/firebase.auth.Auth#currentUser

In" pure"您可以执行以下操作的JavaScript,并使用邮件user@mail.com的用户从身份验证列表中删除。

firebase.auth().signInWithEmailAndPassword("user@mail.com", "abcd")
    .then(function (info) {
       var user = firebase.auth().currentUser;
       user.delete();
    });