node.js - 使用 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);
});
解决方案
当用户通过 Admin SDK 创建时,它只是一个 Firebase 身份验证用户配置文件。它不依赖于任何特定的提供者。
要使用任何特定提供商创建用户帐户,
您必须在 Firebase 项目 > 身份验证 > 登录方法中启用登录提供程序
使用
Firebase SDK
身份验证 - https://firebase.google.com/docs/auth/web/start
例如,如果您希望使用电子邮件/密码提供商创建用户,
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;
// ..
});
推荐阅读
- javascript - 如何在使用 Slim 的 html 标签中添加带有 id 的 javascript 代码?
- wpf - 事件处理程序未在属性更改时触发
- javascript - 如何更改数据表中的行颜色?
- python - 如何从值元组创建 lambda 函数
- sql-server - 如何为存储过程的结果生成创建表
- javascript - 将元素调整为与容器面板相同的高度
- python - 在python中实现一个支持撤消功能的队列
- python - 使用 ArcPy 根据查询字段制作 shapefile?
- java - 无法选择唯一的定位器来单击元素 - selenium java krypton
- python - 独特的价值猎人简单模式