Following are rules of firebase:
{ "rules": { ".read": false, ".write": false } }
I am getting error like this one:
[ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(-3, Permission denied, ) E/flutter (11412): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7) E/flutter (11412): #1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:321:33) E/flutter (11412): E/flutter (11412): #2 DatabaseReference.set (package:firebase_database/src/database_reference.dart:73:31) E/flutter (11412): #3 _HomeState._drawerItems. (package:flutter_app_pg/ui/home.dart:198:60) E/flutter (11412): E/flutter (11412): #4 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:706:14) E/flutter (11412): #5 _InkResponseState.build. (package:flutter/src/material/ink_well.dart:789:36) E/flutter (11412): #6 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24) E/flutter (11412): #7 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:486:11) E/flutter (11412): #8 BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:264:5) E/flutter (11412): #9 BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:236:7) E/flutter (11412): #10 GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:27) E/flutter (11412): #11 GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:222:20) E/flutter (11412): #12 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198:22) E/flutter (11412): #13 GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7) E/flutter (11412): #14 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7) E/flut ter (11412): #15 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7) E/flutter (11412): #16 _rootRunUnary (dart:async/zone.dart:1138:13) E/flutter (11412): #17 _CustomZone.runUnary (dart:async/zone.dart:1031:19) E/flutter (11412): #18 _CustomZone.runUnaryGuarded (dart:async/zone.dart:933:7) E/flutter (11412): #19 _invoke1 (dart:ui/hooks.dart:273:10) E/flutter (11412): #20 _dispatchPointerDataPacket (dart:ui/hooks.dart:182:5) E/flutter (11412):
You are using default Realtime database rules. Here both .read
and .write
set to false
, which would restrict both Read and Write access to your database.
Please change your Database rules as follows:
This is not usually recommended unless you explicitly want to allow everyone to read and write to your database.
{
"rules": {
".read": true,
".write": true,
}
}
{
"rules": {
".read": "auth != null",
".write": "auth != null",
}
}
These rules apply to whole database. If you have multiple Collections in the same database want to apply different rules for each of them. You can do so too.
For an instance, you have two collections messages and news , you can write different rules for each as :
{
"rules": {
// Only Authenticated users can READ and WRITE to messages collection
"messages": {
".read": "auth != null",
".write": "auth != null"
},
// Anyone can READ from news collection, but no one can WRITE to it
"news": {
".read": true,
".write": false
}
}
}
You can use many other such conditions and parameters to customize access to your database. Read Firebase Realtime-database rules for more.
Hope it helps.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.