我试图暗示firebase中的规则,每个登录用户都可以读取Web应用程序上的任何数据。当我通过api登录用户时,我能够通过我的数据库读取任何信息。我正在使用pyrbase库。 这是我的代码:
firebase = pyrebase.initialize_app(configS)
auth=firebase.auth()
db=firebase.database()
email="varun@firebase.com"
password="varun1"
def createUser(data):
user=auth.sign_in_with_email_and_password("admin@firebase.com","admin1")
# user=auth.create_user_with_email_and_password(email,password)
return db.child("users").child(user['localId']).set(data)
def loginUser():
return auth.sign_in_with_email_and_password(email,password)
def readData(branch):
user=loginUser(email,password)
return db.child(branch).get().val()
def writeData(branch,data):
user=loginUser(email,password)
return db.child(branch).push(data,user['idToken'])
results = createUser(dict(name="varun",phone="8787878787"))
# results=readData("responses")
# results=writeData("responses",dict(question="what?",answer="yes"))
print(results)
以下是我的规则:
{
"rules": {
".read":"auth!=null",
"responses":{
".write":"auth!=null"
}
}
}
这是我的数据库结构:
{
"admin":{
"name": ()
"id": ()
}
"users":{
"user_id":
}
"responses":{
}
"surveys":{
}
}