是否可以仅从Firebase检索密钥列表
Is it possible to only retrieve a list of keys from Firebase?
我有一个如下形式的节点:
index
$categoryId
$productId
我希望主要检索index
的键的列表,从而检索一个在索引中填充了所有可用$categoryId
的对象。
有没有办法在Firebase中检索这个列表?我假设检索密钥列表比从$categoryId
检索所有数据的列表更有效。
我知道另一种方法是维护所有类别的索引列表,但这需要更多的编码(当类别被编辑和删除时)。
您可以在REST API中使用浅键选项,但首选索引
Plnker演示
fetch('<my-firebase-app>/category/.json?shallow=true')
.then((response) => {
return response.json()
})
.then((data) => console.log(data)) // prints only keys under category
不幸的是,在实时SDK中没有解决方案。但是,我建议对数据进行结构化,以避免必须使用RESTneneneba API。尝试在Firebase数据库中存储$categoryId
的索引。我知道这是额外的代码,但通常是一行代码。
{
"lookupCategory": {
"category_one": true,
"category_two": true,
"category_three": true,
"category_four": true,
"category_five": true
}
}
有了这个索引,您就可以进行实时侦听,或者.once()
(如果愿意的话)。
var ref = new Firebase('<my-firebase-app>/lookupCategory');
ref.on('value', (snap) => console.log(data));
相关文章:
- API密钥使用和检查示例
- react.js中的密钥绑定
- JS对象密钥序列
- 似乎无法使用javascript从AWS 3S中删除密钥
- 加载两个具有相同父密钥名称的json文件
- 如何获取$data.Entity的密钥
- Angular ngRepeat:重复错误(尽管没有重复的密钥)
- CryptoJS和密钥/IV长度
- Firebase:如何从存在特定密钥的数据中检索记录
- 节点.js哈希,检索密钥
- 为Google Matrix指定API密钥API Javascript检索用法
- 仅使用该值检索 JSON 密钥
- 从 aws cognito 检索访问令牌、秘密访问密钥和会话令牌
- 用密钥加密javascript中的pass,然后检索原始密码(尽可能安全)
- 是否可以仅从Firebase检索密钥列表
- 当父密钥在Firebase中未知时,正在检索子记录
- 如何在不事先知道密钥的情况下检索所有localStorage项
- 从LocalStorage检索所有数据(不知道密钥名称)
- 检索dictionary AngularJS中的密钥
- 如何在Firebase中检索多个密钥