【发布时间】:2021-02-19 18:31:10
【问题描述】:
我正在将 70,000 多名用户从旧的 SQL 数据库服务器迁移到 Firebase。除此之外,还有他们的帖子、cmets、喜欢、关注者等等。
我尝试使用简单的FirebaseAuth.instance.createUserWithEmailAndPassword 但后来我得到了
[firebase_auth/too-many-requests] 由于异常活动,我们已阻止来自此设备的所有请求。请稍后再试。
然后我找到了 FirebaseAuth 导入用户here。而且这似乎是正确的方法。
但是这种方法需要我们提供 UID。但是在我的例子中,前一个用户的 id 是一个 SQL 自动增量 id。 (我们不希望在 Firebase 中使用这种 id。这就是我使用前一种方法的原因,即在迁移所有其他数据之前从 FirebaseAuth 获取 UID。)
所以现在如果我要使用 FirebaseAuth 导入机制,我需要自己创建新的 UID(可能通过散列电子邮件),然后在所有数据(即:帖子、cmets、喜欢等)中使用这个新生成的 UID 来识别拥有它们的用户。
但问题是:FirebaseAuth 导入机制会永远保留给定的 UID 吗?因为根据this post,FirebaseAuth 将生成一个新的 UID(出于安全考虑,这可能是有意义的)。
摘录在这里:
您不能创建用户帐户,然后让用户使用相同的 UID“注册”。
如果我理解正确,那么对我来说这将是一场灾难,因为我将丢失对用户帖子、cmets 和所有其他内容的所有引用。
我试图阅读文档,但这里没有任何关于这一点的说明。
如果原始给定的 UID 没有保留,那么还有其他方法可以迁移用户吗?
【问题讨论】:
-
我有点困惑。您是从旧服务器迁移到 Firebase 身份验证,还是已经在使用 Firebase 身份验证?
-
从旧版服务器 (SQL) 迁移到 FirebaseAuth。让我解决问题
标签: firebase firebase-authentication migrate