首页 > 解决方案 > 使用 firebase admin sdk 创建用户时获取匿名用户

问题描述

我遇到的问题是,当我使用 firebase admin sdk 创建用户时,该用户被创建为匿名用户。数据来自 Angular 到 node.js,用户甚至是创建的,但是是匿名的。

这是代码

const post = req.body;
admin.auth().createUser({
    email: post.email,
    password: post.password
}).then((userRecord) => {
    
    console.log('Successfully created new user:', userRecord.uid);
  })
  .catch((error) => {
    console.log('Error creating new user:', error);
  });

标签: node.jsfirebase

解决方案


当用户通过 Admin SDK 创建时,它只是一个 Firebase 身份验证用户配置文件。它不依赖于任何特定的提供者。

要使用任何特定提供商创建用户帐户,

例如,如果您希望使用电子邮件/密码提供商创建用户,

  • Email/Password在 Firebase 控制台中启用提供程序

在此处输入图像描述

  • 使用以下代码段创建用户
firebase.auth().createUserWithEmailAndPassword(email, password)
  .then((userCredential) => {
    // Signed in 
    var user = userCredential.user;
    // ...
  })
  .catch((error) => {
    var errorCode = error.code;
    var errorMessage = error.message;
    // ..
  });

推荐阅读