实时数据库 Web:是否可以只获取值?

Realtime Database Web: Is it possible to only get values?

我有一个实时数据库条目,如下所示:

{
        <FIREBASE_GENERATED_KEY>:{username:<NAME>,message:<TEXT>,time:<TIMESTAMP>},
        <FIREBASE_GENERATED_KEY>:{username:<NAME>,message:<TEXT>,time:<TIMESTAMP>},
        ...
}

我感兴趣的是仅获取按时间降序排列的值并将它们显示在 UI 上。在 Admin SDK 中,我会做类似的事情:

rdb
      .ref(`${rdb_paths.funfuse_connected_users}/${loc}`)
      .orderByValue('time')
      .get()

我看到有一个方法 orderByValue 但它不接受任何参数。我们如何使用 orderByValue 或任何东西来获取值而不是整个对象?

Firebase 实时数据库始终 returns 来自 JSON 的完整节点,或一组计算特定条件的完整子节点。无法获取每个子节点的属性子集。

如果您发现自己经常只需要每个子节点的 time 属性,请考虑向您的数据库添加另一个分支,您只需保留 time 值。

所以:

"Original_data": {
        <FIREBASE_GENERATED_KEY>:{username:<NAME>,message:<TEXT>,time:<TIMESTAMP>},
        <FIREBASE_GENERATED_KEY>:{username:<NAME>,message:<TEXT>,time:<TIMESTAMP>},
        ...
},
"Times": {
        <FIREBASE_GENERATED_KEY>: <TIMESTAMP>,
        <FIREBASE_GENERATED_KEY>: <TIMESTAMP>,
        ...
}