【发布时间】:2020-09-29 16:59:43
【问题描述】:
我有一个带有 Firebase 的应用,用户可以在其中登录他们的帐户。唯一的问题是,当我想注销时,我想删除我之前保存在数据库中的一些信息,但由于某种原因,数据库没有得到更新,并且出现了以下警告消息:
错误:[数据库/权限被拒绝] 客户端无权访问所需数据
我猜这是因为更新代码没有足够的时间来执行指令。我的代码如下所示(由按下按钮触发):
onPressLogout = () => {
const { navigation } = this.props;
const userId = auth().currentUser.uid;
database().ref(`users/${userId}`).update({ tokens: '' });
auth().signOut().then(() => navigation.navigate('Auth'));
}
感谢任何帮助。
【问题讨论】:
-
通常这意味着您的安全规则未正确配置以访问数据。你能分享你的安全规则吗?
-
@MohammadFaisal 我的规则是这样的
"rules": { ".read": "auth != null", ".write": "auth !== null" } -
如果您有其他信息,您应该使用编辑链接编辑问题以添加该信息。不要将信息隐藏在 cmets 中。
-
请确保您能够记录
userId的有效值。我们在这里看不到您正在处理的内容。
标签: reactjs firebase react-native firebase-realtime-database