规则文件
{
"rules": {
".write": true,
"users": {
".validate": "newData.hasChildren(['uuid', 'on'])",
"on": {
".validate": "newData.isNumber() &&
newData.val() >= 0 &&
newData.val() <= 1"
},
"uuid": {
}
}
}
}
这是我的代码(node.js)。
firebase.initializeApp({
serviceAccount: "BITCOIN-f9a190c06e27.json",
databaseURL: "https://bitcoin-865ac.firebaseio.com"
});
var users = firebase.database().ref('/users')
users.set({
uuid: 'xxxx',
on: '0'
});
我有这个错误。
FIREBASE WARNING:设置为/ users failed:permission_denied (节点:444)UnhandledPromiseRejectionWarning:未处理的承诺拒绝(拒绝ID:1):错误:PERMISSION_DENIED:权限被拒绝
我不知道,我认为写“真”,足以授予任何权限
答案 0 :(得分:1)
另外阅读:
"rules": {
".read": true,
".write": true
答案 1 :(得分:0)
只需删除所有数据库规则,将其添加到数据库规则中。然后我会尝试清理代码
{
"rules": {
".read": true,
".write": true
}
}
在您的代码".read": true
中缺少
答案 2 :(得分:0)
用&#34;用户&#34; node这是一个可以工作的简单用户身份验证规则:
{
"rules": {
"users": {
".read": "false",
".write": "true",
"$uid": {
".read": "auth.uid === $uid",
".write": "auth.uid === $uid"
}
}
}
}