Android linkWithCredential是如何工作的?它是如何与规则一起工作的?
我发现这解释了如何将匿名用户与新注册用户链接,但我不明白它是如何工作的 从我还发现的解释中,我得到了如下的大图(如果我错了,请纠正我):Android linkWithCredential是如何工作的?它是如何与规则一起工作的?,android,firebase,firebase-authentication,firebase-security,Android,Firebase,Firebase Authentication,Firebase Security,我发现这解释了如何将匿名用户与新注册用户链接,但我不明白它是如何工作的 从我还发现的解释中,我得到了如下的大图(如果我错了,请纠正我): 用户匿名登录:获得用户UID(仅举个例子)anonyman-User-UID 用户可以将数据添加到购物车,如下所示: 资料 在签出之前,用户“强制”注册/或登录,然后检索AuthCredential,然后调用linkWithCredential。用户不能使用新的用户UID,例如REGISTERED-User-UID 问题是,每当客户端代码查询shoppingC
anonyman-User-UID
AuthCredential
,然后调用linkWithCredential
。用户不能使用新的用户UID,例如REGISTERED-User-UID
shoppingCart/REGISTERED-USER-UID
时,它是否会检索shoppingCart/anonyman-USER-UID
的项目列表?规则允许吗
例如,如果应用了更复杂的规则,该规则将变为
--只有合适的UserId才能访问购物车,但userUid不能在黑名单子项中
"rules": {
"shoppingCart" {
"$userUid": {
".read": "auth.uid == $userUid && root.child('blackList').child($userUid).val() == false"
}
}
}
有了这样一个逻辑限制,它会成功返回列表吗?我想你对匿名用户登录的流程有点困惑,然后将其与新的身份验证凭据链接。以下是我的经验 当用户以匿名身份登录时,系统会分配一个唯一的ID。现在,当用户决定使用一些新的身份验证凭据注册时,所发生的一切是,在匿名登录时生成的先前UID被分配或链接到这些新凭据 所以实际上没有创建新的UID,您就可以开始了
一定要让我知道这些信息是否有用 我认为您对匿名用户登录的流程有点困惑,然后将其与新的身份验证凭据链接。以下是我的经验 当用户以匿名身份登录时,系统会分配一个唯一的ID。现在,当用户决定使用一些新的身份验证凭据注册时,所发生的一切是,在匿名登录时生成的先前UID被分配或链接到这些新凭据 所以实际上没有创建新的UID,您就可以开始了
一定要让我知道这些信息是否有用 谢谢这解释了很多Hanks这解释了很多
"rules": {
"shoppingCart" {
"$userUid": {
".read": "auth.uid == $userUid"
}
}
}
"rules": {
"shoppingCart" {
"$userUid": {
".read": "auth.uid == $userUid && root.child('blackList').child($userUid).val() == false"
}
}
}