【问题标题】:Would ServerValue.timestamp() work even if there is no connection?即使没有连接,ServerValue.timestamp() 也会工作吗?
【发布时间】:2020-12-10 09:00:11
【问题描述】:

我想知道 Firestore 的 ServerValue.timestamp() 是否会在离线时从其回调中返回一个值?那么使用 ServerValue.timestamp() 来跟踪(可能离线)文件何时被修改是一个明智的选择吗?谢谢

【问题讨论】:

  • 这只是一个时间戳值,除非交付顺序至关重要,否则我不会将自己绑定到 firebase 时间戳。只需使用默认的 iOS Date
  • 不清楚“从回调中返回值”是什么意思。 ServerValue.timestamp() 是一个返回静态令牌的函数,该令牌在服务器上得到解释。无论客户端应用程序是在线还是离线,它都会返回相同的令牌值。您是否想知道一些更具体的场景?
  • 嗨@DougStevenson,谢谢。由于令牌是由服务器解释的,我想知道在没有可用连接时是否可以获得返回值(毫秒)。

标签: ios swift firebase google-cloud-firestore timestamp


【解决方案1】:

ServerValue.timestamp() 是一个函数,它返回一个静态令牌,当它被写入文档的某个字段时,该令牌会在服务器上得到解释。否则令牌本身是没有意义的。

如果您想要一个 Timestamp 对象,其当前时间由客户端设备上的时钟计算,只需调用 Timestamp.init()

有关文档未完全涵盖的服务器时间戳如何工作的更多信息,请阅读this article

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-17
    • 1970-01-01
    • 1970-01-01
    • 2015-01-01
    • 1970-01-01
    • 2021-12-07
    • 1970-01-01
    相关资源
    最近更新 更多