我想提醒正在注册的用户,他们选择的电子邮件地址已在我们的用户库中;在他们注册之前(同时),如何将他们(所需的)电子邮件与我的用户列表中的用户进行比较?用户到底存储在哪里以及如何访问该数据节点?
最佳答案
您应该有一个用户节点,其中包含您的用户以及有关他们的其他信息。
登录凭据存储在 firebase 内部,因此您无法直接访问它们。拥有用户节点允许访问有关用户的其他数据(并且可以仔细检查电子邮件地址是否已在使用中)。
users
uid_00001
name: "Frank"
email: "frank@wazmo.com"
fav_movie: "Airplane"
uid_00002
name: "Kato"
email: "kato@yipee.com"
fav_movie: "Pink Panther"
使用上述结构,您可以简单地查询电子邮件地址,如果有匹配则不允许他们使用它。
这是非常常见的做法,Firebase 网站上有很多有关处理用户的信息。
查看此链接中的存储用户数据
https://www.firebase.com/docs/ios/guide/user-auth.html
注意:7 年后...当尝试使用已存在的电子邮件创建用户时,Firebase 将返回一个错误,指示该电子邮件正在使用中,您可以以这种方式处理该错误。
这可能是比按照上述查询用户节点更好的选择,因为这需要向未经身份验证的用户授予访问权限。
关于firebase - 您如何搜索/访问用户数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33737009/