Firebase:我应该将用户数据存储在身份验证配置文件还是数据库上

Pau*_*ger 5 firebase firebase-authentication flutter

我使用 . 在我的 Flutter 应用程序中注册了一个用户FirebaseAuth.instance.verifyPhoneNumber()。这非常有效,用户会显示在我的 Firebase 控制台中。

FirebaseAuth.instance.currentUser()现在每当我打开应用程序时都会返回用户。我应该在此处存储用户信息(年龄、体重等),还是应该users在我的集合中创建一个集合Database并链接currentUser().uid到那里?

另外,我应该将其存储在与 链接的数据库中uid,还是与登录信息链接的数据库中。例如,将 a 链接userphoneNumber而不是uid。因为如果您删除了用户,但他们想再次注册,那么他们将获得一个新的uid,但他们phoneNumber / email仍然保持不变,因此仍然可以链接到他们的旧数据。

Fra*_*len 7

您无法将任意数据添加到 Firebase 身份验证用户个人资料中。因此,您应该将附加数据存储在数据库中,并将其与用户的 UID 关联起来,以便您可以轻松查找。这还允许您更轻松地实现用户搜索,因为客户端 Firebase 身份验证 SDK 没有功能可以查找除当前登录用户之外的任何用户的数据。


对于附加问题:如果用户从您的应用程序中删除他们的帐户,您应该尊重他们的意愿并删除您为他们存储的附加数据。