我应该明确存储时间戳吗?

时间:2016-02-01 09:15:34

标签: firebase

我正在使用push将数据添加到某个位置的列表中,我需要分析每个项目被推送时的列表。

我是否必须在插入的对象中存储时间戳才能进行基于时间的查询?例如:获取时间x和时间之间的所有项目

我想确保我做得对,因为Firebase已经使用时间戳来保证每个推送项目的唯一键

{
data:"Data to be stored",
timestamp: /* time at which the data was pushed, is this important to do time-based query? */
}

1 个答案:

答案 0 :(得分:2)

如果要查询时间戳,确实应该存储时间戳。虽然技术上可以extract the timestamp from Firebase's push ids,但你不应该依赖这样做。

请注意,您还可以选择要存储的值。当服务器存储数据时(使用Date.now()),当用户发送数据(使用JavaScript Firebase.ServerValue.TIMESTAMP时,是否要存储?这些值之间总会有一些差异。但是当用户失去网络连接时,差异可能会变得很大。您可以自行决定用例所需的逻辑。