首页 > 解决方案 > Firebase 搜索查询 startAt endAt

问题描述

使用 Firebase Rest api 查询搜索过程时遇到问题。我使用 startAt 和 endAt 参数进行第一次和最后一次搜索,但它仍然没有列出它。

https://myprojectdemo.firebaseio.com/posts.json?orderBy="title"&startAt="Car"&endAt="Car\uf8ff"&print=pretty

我以这种方式发出 GET 请求。

"-WE2QEYJx8gaOUkOsvWkV": {
  "title" : "Red Car",
  "category" : "Other" 
},
"-WE2KSBJx8gaOUkOsvWkV": {
  "title" : "White Car",
  "category" : "Other" 
}

我有一个像上面这样的输出。有两批货物,名为 White Car 和 Red Car。当我搜索汽车时,我希望他们两个都出来。我在哪里犯错?

标签: firebasefirebase-realtime-database

解决方案


看起来您正在尝试做的是找到带有一些子字符串的字符串结尾。您只能搜索以某个子字符串开头的字符串。实时数据库不支持除字符串前缀外的任何其他方式的子字符串查询。

如果您希望能够搜索汽车项目,请考虑向每个子项添加另一条数据,表明它是汽车类型对象,并使用它来过滤您的结果集。使用现在的标题是行不通的。


推荐阅读