Firebase:通过UID获取用户电子邮件



我看到了一些关于这个主题的老问题,但我想看看这些年来是否有什么变化。

我正在Swift中建立一个好友系统。那里我有一个列表,如果用户,确认了交友请求。

在每个注册用户的userData中,我有一个字段"friends",它显示了具有Bool值的已确认好友:

UserData:
- friends:
- UID1 : true
- UID2 : true
[...]

在我的列表中,我想现在显示朋友的电子邮件,而不是UID。有没有一种方法可以通过Auth.Auth((.getMailByUid((来获取电子邮件?现在,获取每个朋友的整个userData Collection并从中提取电子邮件,感觉很麻烦。将mailadress单独保存在userData中也感觉像是重复,因为它已经与Firebase的身份验证系统中的UID链接。

实现这一目标的常见方法是什么?

客户端Firebase SDK没有公开通过UID查找用户数据的方法,因为这会带来安全风险。这个领域没有什么实质性的变化,主要是因为没有什么可以改变的。

如果你的应用程序需要此功能,你可以将数据写入数据库(并在那里保护它(,也可以将Admin SDK(的方法(包装在自定义API中(并在这里保护它(。

另请参阅:

  • 如何通过用户电子邮件获取userID Firebase android
  • 如何根据用户id获取Firebase中任何用户的电子邮件?如何从uid Firebase数据库中获取电子邮件地址

相关内容

最新更新