尝试读取或写入firebase数据库时获取此语句“权限被拒绝”

时间:2019-01-02 18:52:41

标签: ios firebase

我正在尝试以下代码读取数据,但无法读取数据:

let userID = FIRAuth.auth()?.currentUser?.uid
ref.child("users").child(userID!).observeSingleEvent(of: .value, with: { (snapshot) in
        // Get user value
        let value = snapshot.value as? NSDictionary
        let username = value?["username"] as? String ?? ""
        print("---------------")
        print(username)
        print("---------------")
    }) { (error) in
        print(error.localizedDescription)
    }

1 个答案:

答案 0 :(得分:0)

您需要更改默认的Firebase规则,默认情况下需要登录以访问数据库。 如果您不了解,请阅读documentation

上的Firebase规则

您可以设置

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

,但是此规则将在您的应用程序中留下漏洞。 上面的示例允许您在登录后进行读写。

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