【发布时间】:2020-06-26 18:18:39
【问题描述】:
我想做的事:将用户的当前时间转换为GMT时间戳,然后上传到firebase。
问题:我的 Firestore 数据库中的时间戳不是 GMT 时间戳,而是具有用户唯一时区的常规时间戳。
我的代码:
let formatter = DateFormatter()
formatter.timeZone = TimeZone(secondsFromGMT: 0)
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss Z"
let date = Date()
self.db.collection("posts").document(combined).setData([
"time": date,
]) { err in
if let err = err {
print("Error writing document: \(err)")
} else {
print("Post Document successfully written!")
print(date)
}
}
到目前为止实际发生的情况:
我在上传到 Firebase 后打印出日期时收到2020-06-26 17:57:40 +0000。这是我要上传的时间戳。
我尝试了什么:
- 删除应用并重新安装
- 清除我的 Firebase Firestore
【问题讨论】:
-
GCP 控制台正在将您的 UTC 日期转换为您的本地日期,例如尝试创建一个新的测试实体。添加“日期和时间”类型的属性,选择以 GTM/UTC 作为时区的日期和时间。添加另一个属性,此时第一个属性的卡片将被折叠并应显示本地时间之前的属性值
标签: ios swift firebase google-cloud-firestore timestamp