调用Firestore REST API创建根层级带字段文档的问题求助
问题根因
Firestore REST API的路径严格遵循「集合/文档/集合/文档」的交替规则,你原请求路径/documents/Users/hello/APITest的结构拆解为:
- 层级1:Users(集合)
- 层级2:hello(文档)
- 层级3:APITest(集合)
POST请求发送到集合路径时,Firestore会默认在该集合下生成一个自动ID的新文档存储提交的字段,因此产生了多余的嵌套层级。
调整方案
分两种常用场景选择对应方案:
场景1:指定文档ID写入(比如目标文档ID为hello)
使用PATCH方法,路径直接定位到目标文档即可,请求示例如下:
PATCH https://firestore.googleapis.com/v1/projects/###/databases/(default)/documents/Users/hello HTTP/1.1 Accept: application/json Content-Type: application/json { "fields": { "Name": { "stringValue": "Josh" }, "Age": { "integerValue": "23" } } }
场景2:Users集合下新建自动ID的文档
使用POST方法,路径定位到Users集合即可,请求示例如下:
POST https://firestore.googleapis.com/v1/projects/###/databases/(default)/documents/Users HTTP/1.1 Accept: application/json Content-Type: application/json { "fields": { "Name": { "stringValue": "Josh" }, "Age": { "integerValue": "23" } } }
内容的提问来源于stack exchange,提问作者User_42
相关产品推荐
相关产品推荐

