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

Firebase 云Firestore REST API-添加服务器时间戳,firebase,arduino,google-cloud-firestore,esp8266,Firebase,Arduino,Google Cloud Firestore,Esp8266,我正在使用带有ESP8266-01模块的Arduino,使用createDocument API将值上载到云Firestore数据库,有效负载如下: { "fields": { "distance": { "integerValue": "555" } } } { "writes": [ { "update": { "name": "proje

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

{
    "fields": {
        "distance": {
            "integerValue": "555"
        }
    }
}
{
    "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"
                    }
                ]
            }
        }
    ]
}
我向如下路线发出POST请求:

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

感谢您的帮助。

我最终做了以下几件事:

对如下路由的POST请求:

https://firestore.googleapis.com/v1beta1/projects/<MY_PROJECT>/databases/(default)/documents/<SOME_COLLECTION>?key=MY_VERY_SECRET_KEY
https://firestore.googleapis.com/v1beta1/projects//databases/(默认)/文档:提交?&key=

具有以下有效载荷:

{
    "fields": {
        "distance": {
            "integerValue": "555"
        }
    }
}
{
    "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"
                    }
                ]
            }
        }
    ]
}
{
“写”:[
{
“更新”:{
“名称”:“项目//数据库/(默认)/文档//”,
“字段”:{
“距离”:{
“integerValue”:“555”
}
}
}
},
{
“转变”:{
“文档”:“项目//数据库/(默认)/文档/”,
“字段转换”:[
{
“fieldPath”:“servertime”,
“setToServerValue”:“请求时间”
}
]
}
}
]
}

在这里,我生成了一个新的文档ID(例如GUID),而不是让cloud firestore为我生成一个。

我记得我是用
FieldTransform执行此操作的,但没有准备好示例。也许您(或其他人)可以从和API资源管理器中找到答案。另请参阅我之前(不完整)的答案:,其中还包括指向以下要点的链接:在firestore中哪里可以找到“我的非常机密的密钥”?我将向您介绍此页面:这里提到的令牌。