【问题标题】:Firebase problems, cant set dataFirebase 问题,无法设置数据
【发布时间】:2018-04-14 06:54:45
【问题描述】:

规则文件

   {
      "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 警告:设置在 /users 失败:permission_denied (节点:444)UnhandledPromiseRejectionWarning:未处理的承诺拒绝(拒绝 id:1):错误:PERMISSION_DENIED:权限被拒绝

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

【问题讨论】:

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


    【解决方案1】:

    使用“用户”节点,这是一个可以工作的简单用户身份验证规则:

    {
     "rules": {
      "users": {
        ".read": "false",
        ".write": "true",
      "$uid": {
        ".read": "auth.uid === $uid",
        ".write": "auth.uid === $uid"
        }
       }
      }
    }
    

    【讨论】:

      【解决方案2】:

      只需删除所有数据库规则,将其添加到数据库规则中。然后我会尝试清理代码

      {
        "rules": {
          ".read": true,
          ".write": true
        }
      }
      

      您的代码中缺少".read": true

      【讨论】:

        【解决方案3】:

        添加阅读:

        "rules": {
            ".read": true,
            ".write": true
        

        【讨论】:

          猜你喜欢
          • 2020-02-19
          • 1970-01-01
          • 2017-05-18
          • 2019-12-03
          • 2015-06-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多