【发布时间】:2018-01-15 14:49:48
【问题描述】:
我完全编造了“类型说明符”这个名称。我的意思是值前面的stringValue 键。通常我希望得到更标准的回复:"name" : "name_here"。
{
"fields": {
"name": {
"stringValue": "name_here"
}
}
}
在拨打GET 电话时是否可以删除这些?
更重要的是,很高兴了解它的结构为何如此。即使是POST-ing 数据?简单的答案可能是因为 Cloud Firestore 与实时数据库不同,需要知道具体类型,但更深层的原因是什么?有没有这样的格式的“官方”名称,我可以做更多的研究?
例如,推理是否与Protocol Buffers 有关?有没有办法请求 protobuf 而不是 JSON?
【问题讨论】:
-
这个问题有点不清楚,但你的 Firebase 结构看起来那样的原因是因为......你把它放在那里。 NoSQL 数据库中没有模式或预先确定的结构;只有键:值对。在上面的结构中,键 stringValue 作为 name_here 的值。 name 是该子节点的父键,fields 是 name 键的父键。如果您想知道它是如何做到的,请发布您的代码,我们会看看。
-
@Jay 我希望它是
"name" : "name_here"而不是"name": { "stringValue": "name_here" }在进行 GET 调用时。我没有“创建该架构”,而是创建了"name" : "name_here"。这是Cloud Firestore不是Realtime Database。除非我设置错误,否则按照标准,这就是它的工作方式。我使用 Google APIs Explorer 进行 GET 调用。 -
我不相信 Firestore 会直接添加该键,因为它仍然是键:值对和键名取决于您。你能把你写那个节点的代码贴出来让我们看看吗?
-
@Jay 您目前在使用 Firestore 吗?还是有?我可能会做一些疯狂的事情,但我只是在做标准的事情。我上传了截图。
-
是的,我是。创建该数据的代码在哪里? 请不要在您的问题中发布代码或 Firebase 结构的图片。见Don't Use Screenshots
标签: firebase google-cloud-firestore