Firebase Google OAuth - Auth uid不同于先前已删除的电子邮件的回调返回的uid
Firebase Google OAuth - Auth uid is different from the one returned by the callback for emails that have been previously deleted
我有一个简单的登录按钮,调用以下代码:
var ref = new Firebase(<MY_FIREBASE_URL>);
ref.authWithOAuthPopup('google', function(error, authData) {
if (error) {
console.log('Login Failed!', error);
} else {
console.log('Authenticated successfully. ID:', authData.uid);
}
}, {
scope: 'email, profile'
});
对于新用户,它在Firebase中的Auth表中创建一个条目,并为它分配一个UID。这个UID 假定与authData相同。uid在回调中返回。但是,对于先前从Auth表中删除的用户电子邮件,它们是不同的。基本上,这些id只匹配一次—对于从未存储在Auth表中的用户帐户。如果您从Auth中删除它并重新执行身份验证流程,则ID将不同。
在我看来,这是Firebase实现唯一ID生成算法的错误。还有其他人遇到过这个问题吗?有解决方法吗?
我正在使用Firebase SDK 2.4.2.
编辑:使用SDK 3无法重现
我想我明白你在描述什么,如果是这样,那么我认为这是一个bug:
- 创建用户
A
,邮箱地址为a
- 从Firebase控制台删除用户
A
- 创建用户
B
,邮箱地址为a
-
authData.uid
对于B
与A
相同 - 在Firebase控制台中
B
的uid
是其他一些随机字符串
你现在可以做的是通过2。
相关文章:
- 使用php或javascript从facebook相册URL中删除多余的部分
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- 如何删除多行HTML排列中的空白
- 如何从rails中的代码中删除新行( )
- 删除对HTML元素的拖动
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 按顺序添加和删除类
- iframe正在添加标签,需要删除它们
- 如何在HTML输入字段中添加不可删除的后缀
- addData()从最新图表中删除.js 2.1.3-怎么了
- 如何覆盖锚点元素's href目标,并在我点击转到目标javascript时删除其他错误
- 删除CKEditor工具栏按钮,但不删除功能
- 当浏览器上的后退按钮到达主页时,我需要删除Class
- 正在删除node.js中已验证的网站
- 正在从页面中删除iframe
- 如何从 HTML 查询中删除项目
- 如何在iOS应用程序中从Firebase中删除超过6小时的数据
- 未捕获的类型错误:无法读取属性'删除'的未定义
- 在不知道深度或父属性的情况下从对象中删除属性
- Firebase Google OAuth - Auth uid不同于先前已删除的电子邮件的回调返回的uid