我正在使用Firebase Auth和Firestore处理应用,我们将用户信息存储在/users
集合中。有些用户登录并拥有Firebase身份验证记录。其他用户无法登录,他们的/users
文档仅用作参考数据。
对于链接到管理员记录的/users
集合中的Firestore文档,我将文档ID设置为Firebase身份验证UUID(Firebase身份验证生成的28个字符ID)。这使我可以在用户登录后轻松获取用户信息。
对于其他人,我正在创建用户记录,其中包含Firestore通过.doc()
或.add(newData)
创建的自动生成的20个字符ID。
是否存在任何记录在案的风险,或者Firebase是否说明了任何使其不明智的事情?我在他们的指南/参考文档中没有发现任何一种方式。他们的文档说明您可以设置ID或让它为您生成,但它永远不会说您可以在同一个集合中混合使用这两种方法。 Firebase是否对其ID的长度做出任何保证(目前Auth使用28个字符,而Firestore使用20个,这保证了它们永远不会重叠)。如果自动生成的ID已存在,Firestore会自动创建新ID吗?
我看到的最大风险是,如果将来实施变更,并且两者都有相同的长度ID,但我无法找到任何方式保证。