Firebase数据库权限被开放规则拒绝

时间:2018-09-17 04:46:52

标签: firebase firebase-realtime-database flutter

我正在设置Firebase数据库,但不断收到权限拒绝错误,该错误可能源于以下代码:

 void _initDatabase() async {
  await fbDatabase.init(database);

  _counterSubscription = fbDatabase.counterRef.onValue.listen((Event event) {
    setState(() {
      fbDatabase.error = null;
      fbDatabase.counter = event.snapshot.value ?? 0;
    });
  },
  onError: (Object o) {
    final DatabaseError error = o;
    setState(() {
      fbDatabase.error = error;
    });
  }
  );
}

这是初始化函数:

Future<Null> init(FirebaseDatabase database) async {
  counterRef = FirebaseDatabase.instance.reference().child('test/counter');
  counterRef.keepSynced(true);
  database.setPersistenceEnabled(true);
  database.setPersistenceCacheSizeBytes(10000000);
  print('init complete');
}

注意:我也尝试将其作为空值,但我想等待它以确保一切完成。

这是我看到的错误:

I/flutter ( 7847): init complete
W/SyncTree( 7847): Listen at /test/counter failed: DatabaseError: Permission denied

这些是我数据库中的规则:

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write;
    }
  }
}

奇怪的是,我已经连接到Firebase存储,所以我知道我已经通过身份验证,并且我的规则已设置为从理论上讲任何人都应该能够读写。我在android / app位置下有json文件,目前我想不起其他任何事情。

有人知道如何解决此问题吗?

谢谢

山姆

0 个答案:

没有答案