Cloud Firestore REST API - 添加服务器时间戳



我正在使用带有 ESP8266-01 模块的 Arduino 使用具有以下有效负载的 createDocument API 将值上传到 Cloud Firestore 数据库:

{
"fields": {
"distance": {
"integerValue": "555"
}
}
}

我对这样的路由执行 POST 请求:

https://firestore.googleapis.com/v1beta1/projects/<MY_PROJECT>/databases/(default)/documents/<SOME_COLLECTION>?key=MY_VERY_SECRET_KEY

这一切都有效,但我也想添加服务器时间戳。我在stackoverflow上找到了一些答案,但我无法使它们中的任何一个工作。

如何将服务器时间戳添加到创建的文档?我想要的是创建以下内容:

{
"fields": {
"distance": {
"integerValue": "555"
},
"timestamp" : {
"DATETIME": SERVER_TIMESTAMP
}
}
}

任何帮助表示赞赏。

我最终做的是:

对路由的 POST 请求如下所示:

https://firestore.googleapis.com/v1beta1/projects/<MY_PROJECT>/databases/(default)/documents:commit?&key=<MY_VERY_SECRET_KEY>

具有以下有效负载:

{
"writes": [
{
"update": {
"name": "projects/<MY_PROJECT>/databases/(default)/documents/<COLLECTION_ID>/<DOCUMENT_ID>",
"fields": {
"distance": {
"integerValue": "555"
}
}
}
},
{
"transform": {
"document": "projects/<MY_PROJECT>/databases/(default)/documents/<COLLECTION_ID>/<DOCUMENT_ID>",
"fieldTransforms": [
{
"fieldPath": "servertime",
"setToServerValue": "REQUEST_TIME"
}
]
}
}
]
}

我生成一个新DOCUMENT_ID(例如 GUID(而不是让云火存储为我生成一个。

最新更新