如何使用 firebase admin 通过 displayName 获取用户?
How do I getuser by displayName using firebase admin?
我在使用 firebase-admin 时尝试检查用户名在注册过程中是否已经存在。好像没有 getuserbydisplayname 函数。我试过使用 getUser 函数并像这样传入一个 displayName,但它不接受。
admin.auth().getUsers([{
displayName: username
},]).then((getUsersResult) => {
if(getUsersResult.users.length > 0){
console.log("User already exists.");
}
})
.catch((error) => {
console.log('Error fetching user data:', error);
});
文档说只接受 uid、email 或 phone。似乎唯一的其他方法是列出所有用户并检查其中是否有相同的显示名称,但这似乎效率很低。我也可以制作另一个数据库并引用它,但它似乎也很低效。我应该如何最好地做到这一点?
无法通过 Firebase Admin SDK(或其他 SDK)中的显示名称访问用户。您将不得不遍历所有用户,并分别检查他们的显示名称,直到找到您想要的那个。
或者(更常见)您可以维护自己的用户配置文件信息数据库,并在那里执行查询。
我在使用 firebase-admin 时尝试检查用户名在注册过程中是否已经存在。好像没有 getuserbydisplayname 函数。我试过使用 getUser 函数并像这样传入一个 displayName,但它不接受。
admin.auth().getUsers([{
displayName: username
},]).then((getUsersResult) => {
if(getUsersResult.users.length > 0){
console.log("User already exists.");
}
})
.catch((error) => {
console.log('Error fetching user data:', error);
});
文档说只接受 uid、email 或 phone。似乎唯一的其他方法是列出所有用户并检查其中是否有相同的显示名称,但这似乎效率很低。我也可以制作另一个数据库并引用它,但它似乎也很低效。我应该如何最好地做到这一点?
无法通过 Firebase Admin SDK(或其他 SDK)中的显示名称访问用户。您将不得不遍历所有用户,并分别检查他们的显示名称,直到找到您想要的那个。
或者(更常见)您可以维护自己的用户配置文件信息数据库,并在那里执行查询。