Javascript 如何为REST请求设置Firebase实时数据库规则?
在当前的项目中,我们使用React创建一个网站,该网站将显示Firebase实时数据库中的一些信息。我们使用npm中的Javascript 如何为REST请求设置Firebase实时数据库规则?,javascript,firebase,rest,authentication,firebase-realtime-database,Javascript,Firebase,Rest,Authentication,Firebase Realtime Database,在当前的项目中,我们使用React创建一个网站,该网站将显示Firebase实时数据库中的一些信息。我们使用npm中的firebase.auth()-包进行身份验证,其中唯一存在的用户是我们的管理员用户。 我似乎不知道如何通过实时数据库规则集验证我的POST请求 我在谷歌上搜索了一段时间,找到了我显然需要与对象一起传递的令牌,我通过运行firebase.auth().currentUser.getIdToken找到了该令牌。然而,通过将我的规则设置为 { "rules": { ".r
firebase.auth()
-包进行身份验证,其中唯一存在的用户是我们的管理员用户。我似乎不知道如何通过实时数据库规则集验证我的POST请求 我在谷歌上搜索了一段时间,找到了我显然需要与对象一起传递的令牌,我通过运行
firebase.auth().currentUser.getIdToken
找到了该令牌。然而,通过将我的规则设置为
{
"rules": {
".read": true,
".write": "auth.uid != null"
}
}
…它仍然不允许我发布。当然,这不是一个非常安全的授权,但它应该允许我发布,因为我给它一个访问令牌。(我使用URL.firebaseio.com/.json?access token=token
)在请求URL中执行此操作)
我想知道的是我误解了系统的哪一部分。我不想在npm中使用firebase/database
-包,因为我不太了解它,我想一次学习一个步骤
如果我必须更新规则文件,它应该说什么?如果令牌/url错误,应该是什么
任何帮助都将不胜感激!谢谢。我解决了它,供我自己使用: 在Firebase控制台的“身份验证”选项卡下,我发现可以获取用户的UID 通过将获取URL更改为
URL.firebaseio.com/.json?auth=TOKEN)
并将写入规则更改为”.write:“auth.uid=='[uid]'”
其中[uid]
是前面提到的uid,它只允许通过firebase.auth()登录的用户发出post请求
干杯。我解决了它,供我自己使用:
在Firebase控制台的“身份验证”选项卡下,我发现可以获取用户的UID
通过将获取URL更改为URL.firebaseio.com/.json?auth=TOKEN)
并将写入规则更改为”.write:“auth.uid=='[uid]'”
其中[uid]
是前面提到的uid,它只允许通过firebase.auth()登录的用户发出post请求
干杯