Firebase权限被拒绝Swift 3
我试图读取通过uid值分配给特定用户的数据,但我的权限被拒绝 有人知道我犯这个错误的原因吗Firebase权限被拒绝Swift 3,firebase,swift3,firebase-realtime-database,Firebase,Swift3,Firebase Realtime Database,我试图读取通过uid值分配给特定用户的数据,但我的权限被拒绝 有人知道我犯这个错误的原因吗 import UIKit import Firebase class ViewController: UIViewController { // dataChild value == User UID as in console.firebase.google.com var dataChild = "xd5rwZzUqoRbfMp2rq5pTRB3s1" var dbRef:FIR
import UIKit
import Firebase
class ViewController: UIViewController {
// dataChild value == User UID as in console.firebase.google.com
var dataChild = "xd5rwZzUqoRbfMp2rq5pTRB3s1"
var dbRef:FIRDatabaseReference! // reference to Firebase
override func viewDidLoad() {
super.viewDidLoad()
dbRef = FIRDatabase.database().reference().child("Users")
startObservingDB()
}
func startObservingDB() {
dbRef.child(dataChild).observe(.value, with: { (snapshot: FIRDataSnapshot) in
print("The snapshot is \(snapshot.value)") //no longer prints
}, withCancel: { (Error:Any) in
print("Error is \(Error)") //prints Error is Error Domain=com.firebase Code=1 "Permission Denied"
})
} // end of startObservingDB()
}
Firebase Json树
{
"Users" : {
"xd5rwZzUqoRbfMp2rq5pTRB3s1" : {
"718565122" : {
"BookingAmount" : "12",
"BookingNumber" : "718565122",
"DateAndTime" : "Mon, 26 Sep 2016 18:30",
"EmailAddress" : "1@gmail.com",
"FlatNumber" : "10",
"FrequecyAmount" : 48,
Firebase规则
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
我忘了在swift文件中添加
pod'Firebase/Auth'
和import FirebaseAuth
的pod。这就是我无法使用有效uid读取firebase数据库的原因。我忘记在swift文件中添加pod'firebase/Auth'
和import FirebaseAuth
的pod。这就是我无法使用有效uid读取firebase数据库的原因。这意味着您没有读取数据的权限。阅读Firebase文档中有关为应用程序设置安全规则的内容,了解所有相关信息:@FrankvanPuffelen每次我在数据库中保存数据时,它的格式为Users/Uid/第一个数据节点,例如718565122。Uid是通过Firebase身份验证获得的用户ID。鉴于我在我的路径中使用了一个有效的UID,FialBASE应该考虑到用户被认证并允许我读取它的数据。我也用安全规则更新了我的问题。这意味着你没有读取数据的权限。阅读Firebase文档中有关为应用程序设置安全规则的内容,了解所有相关信息:@FrankvanPuffelen每次我在数据库中保存数据时,它的格式为Users/Uid/第一个数据节点,例如718565122。Uid是通过Firebase身份验证获得的用户ID。鉴于我在我的路径中使用了一个有效的UID,FialBASE应该考虑到用户被认证并允许我读取它的数据。我也用安全规则更新了我的问题。