无法从管理员检索Firebase数据库中的数据
问题描述:
我可以使用管理员从我的服务器写入我的users
表,但我无法检索数据。无法从管理员检索Firebase数据库中的数据
当看我的控制台时,运行以下代码时看不到任何消息。
我期望看到与查找到的选择器输出关联的电子邮件地址到控制台。
// Get info from persistent login cookie
var cookie = req.cookies.rememberme.split(':')
var selector = cookie[0]
var token = cookie[1]
var db = firebaseAdmin.database()
var userRef = db.ref('users')
.orderByChild('selector')
.equalTo(selector)
.once('value', function(dataSnapshot) {
console.log("Email: " + dataSnapshot.val().email)
})
我可以证实,cookie存在,当脚本正在运行的selector
变量被设置。
在users
表中的条目被安排如下:
key: {
selector,
token,
email
}
答
你一定要设置在火力控制台上的数据库视图规则选项卡中的读/写权限?
答
问题在于服务帐户的凭据。
我原本选择了“其他>火力地堡规则系统”(因为没有其他选项提(火力地堡),但它应该是从“项目”部分的东西。
我创建了一个新的服务帐户“项目>所有者”的权限,上传新的证书,并如预期,我可以从数据库中检索
点击此处了解详情:https://firebase.google.com/docs/database/admin/start
是,两者都设置为false。如前所述,我可以写但不能阅读。 – charliesneath
尝试将读取更改为true并暂时再次测试。 –
不幸的是,这没有什么区别。我现在也在检查错误,但仍然没有输出在控制台中。 – charliesneath