Firebase问题,无法设置数据

时间:2017-11-01 21:03:19

标签: node.js firebase firebase-realtime-database

规则文件

   {
      "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:权限被拒绝

我不知道,我认为写“真”,足以授予任何权限

3 个答案:

答案 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"
    }
   }
  }
}