Firebase Firestore REST请求-查询和筛选
我有一个firebase项目的firestore数据库。我想使用rest请求与postman一起过滤或查询数据。我正在使用“/databases/(default)/documents/”获取数据库中已知路径中的数据。以下是我的数据库结构示例:Firebase Firestore REST请求-查询和筛选,firebase,google-cloud-firestore,request,postman,Firebase,Google Cloud Firestore,Request,Postman,我有一个firebase项目的firestore数据库。我想使用rest请求与postman一起过滤或查询数据。我正在使用“/databases/(default)/documents/”获取数据库中已知路径中的数据。以下是我的数据库结构示例: 用户>xxxxx>消息>YYYY>“已发送”:“真” 其中“用户”和“消息”是集合,“xxxxx”和“YYYY”是自动生成的文档id(xxxxx是自动生成的用户id) 我想做的是查找“xxxxx”的(用户),这些用户已>“发送”:“true”
- 用户>xxxxx>消息>YYYY>“已发送”:“真”
如果我知道“xxxxx”和“yyyy”,我会成功,但我不知道它们,因为它们是自动生成的,在我的数据库中彼此不同,并且不知道如何操作。您需要运行查询,如REST API文档中所述 由于要查询不同
用户
文档的所有消息
子集合,因此需要在。方法是在中将allsubstands
元素设置为true
因此,在以下URL上发出POST HTTP请求就可以做到这一点:
var URL = "https://firestore.googleapis.com/v1/projects/<your-project-id>/databases/(default)/documents:runQuery";
请注意,您需要向Firestore数据库添加单个字段索引,如下所示:
另外请注意,如果您的字段
sent
类型为Boolean
(而不是问题中所示的String
),则需要在JSON元素中使用booleanValue
元素。@ymeksur Hi,您有时间查看建议的答案吗?Hi@RenaudTarnec。这几天我很忙。是的,我看了你的答案,效果很好。非常感谢您的详细回答。嗨@ymeksur,很高兴我能帮助您!您可以接受答案,向其他读者表明它解决了您的问题,请参阅。谢谢
"structuredQuery": {
"from": [{
"collectionId": "messages",
"allDescendants": true
}],
"where": {
"fieldFilter": {
"field": {
"fieldPath": "sent"
},
"op": "EQUAL",
"value": {
"stringValue": "true",
}
}
}
}