【问题标题】:how to write to firebase database using rest api?如何使用rest api写入firebase数据库?
【发布时间】:2018-08-10 17:47:24
【问题描述】:

我正在尝试使用 rest api 从 firebase 数据库中删除一个节点。我可以读取数据库,但是当我尝试删除或写入它时,它给了我权限被拒绝错误。我正在使用 python requests 包进行休息调用。 这是我的 firebase 数据库安全规则

{  
"rules": {

".read": "auth.uid == 'foobar'",
".write":"auth.uid == 'foobar'"          
}
}

我在 firebase 控制台 -> 身份验证 -> 用户 中有一个用户,用户 uid 为“foobar”。 这是发出删除请求的python代码

url='https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyPassword?key=<my-api-key>'
data={
"email": "my-email",
"password": "my-pass",
"returnSecureToken": "true"
}
contents = requests.post(url,data)    
idToken= contents.json()["idToken"]
payload = {"auth":idToken}
#i also tried sending uid with payload
#payload={"auth":idToken,"uid":"foobar"}
url="https://my_app_id.firebaseio.com/Home01/.json";
contents=requests.delete(url,data=payload)

我怎样才能成功提出删除请求。

【问题讨论】:

    标签: rest firebase firebase-realtime-database firebase-authentication python-requests


    【解决方案1】:

    我相信auth 应该作为查询参数发送,而不是作为请求正文的一部分。 Firebase REST API 可能会忽略 DELETE 请求的正文。尝试在对requests.delete() 的调用中使用params=payload 而不是data=payload

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-01
      • 2020-06-20
      • 2022-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-20
      相关资源
      最近更新 更多