【发布时间】:2011-11-25 09:07:03
【问题描述】:
我为我工作的网站创建了一个搜索 API。例如,它支持的一些查询是:
-
/api/search- 返回热门搜索结果 -
/api/search?q=car- 返回匹配“汽车”一词的结果 -
/api/search?start=50&limit=50- 从偏移量 50 开始返回 50 个结果 -
/api/search?user_id=3987- 返回 ID 为 3987 的用户拥有的结果
这些查询参数可以混合和匹配。它是在后台使用Solr 的分面搜索实现的。
我正在添加可以基于数字属性过滤结果的查询参数。例如,我可能只想返回查看次数大于 100 的结果。我想知道指定此项的最佳做法是什么。
Solr 使用这种方式:
/api/search?views:[100 TO *]
Google 似乎在做这样的事情:
/api/search?viewsisgt:100
这些对我来说都不是很吸引人。是否有指定此类查询词的最佳实践?有什么建议吗?
【问题讨论】: