【发布时间】:2020-06-30 11:06:17
【问题描述】:
- 我有一个聊天应用程序,目前我使用 timeIntervalSince1970 处理日期。这就是它在 Firestore 中的存储方式
- 由于两个人可以从两个不同的国家/地区聊天,因此我采用 本地时间戳 来处理此问题,将其转换为 GMT 时间戳,然后将其存储在 Firestore 中
- 事实证明这是一个糟糕的实现,因为我们不应该依赖设备时间,所以我只是转而使用 Firestore 的 FieldValue.serverTimestamp()
- 我认为 firebase 将使用它自己的服务器时间(我的 firebase 服务器在美国),但它似乎将其存储在当地时间(我目前在印度)
- 我在这里缺少什么?我知道它以 UTC 存储,但本地时间显示在文档中。如何存储单个全球时间?
代码如下:
func firebaseTimestampSet(){
guard let currentUid = Auth.auth().currentUser?.uid else {return}
let ref = Firestore.firestore().collection("dateTest").document(currentUid)
ref.setData(["timestamp": FieldValue.serverTimestamp()])
}
结果如下:
【问题讨论】:
标签: ios swift firebase google-cloud-firestore