【发布时间】:2016-07-30 03:19:46
【问题描述】:
我正在试验Firebase 并对security rules 感到好奇。
假设您有一个 firebase 数据集,表示为:
{
"myNewData" : "Some String"
}
您如何编写规则,以便只有写入的对象具有键名 myNewData?
我正在使用POST 方法,数据在 Firebase 中的结构如下:
-myFireBaseapp
-someData
-RandomFirebaseKey
-myNewData
-RandomFirebaseKey
-myNewData
在我想出的模拟器中
{
"rules": {
".read":true,
"$someData":{
".write":true,
".validate": "newData.hasChild('myNewData')"
}
}
}
在模拟器中有效,但在邮递员中无效。
POST
http://myfirebase.app.bucket/someData.json
{
"myNewData" : "Some String"
}
感谢您提供任何信息。
【问题讨论】:
-
显示使 REST 调用失败的最少代码。
-
@FrankvanPuffelen REST 调用属于邮递员。在上方添加了电话后
-
该请求没有发送任何数据,因此不满足安全规则。没有minimal, complete example of what you're trying to do,很难提供帮助。例如,在这种情况下,您的数据结构的两个样本因
myNewData是否是值的键而异。我会写一个答案,希望对你有帮助。 -
@FrankvanPuffelen 实际上我要发送的数据在上面。这只是键/值 "myNewData" : "Some String"
-
@FrankvanPuffelen 当我删除邮递员请求的规则时,但当然不适合我的情况。
标签: javascript firebase firebase-realtime-database firebase-security