我使用传统的JEE应用程序与algolia,我需要检索一个facet的所有值(大约250),我得到的最多100。 根据文档,我不能请求超过100(algolia doc)。 我该怎么做? 附:我不想使用"写" API密钥,只有安全密钥。
答案 0 :(得分:0)
不幸的是,使用maxFacetHits
无法超越100限制。
解决方案可以是浏览整个索引以获取构面的所有可能值。当然,根据您的索引大小,可能需要一些时间,我们不建议这样做以实时显示它。 您可能希望缓存结果,并不时更新它。
此外,如果您的记录也存储在数据库中,则可能更容易从中检索这个构面值列表而不是使用Algolia。
答案 1 :(得分:0)
找到答案,因此我必须用以下属性填充查询。
query.setHitsPerPage(10);
query.setPage(0);
query.setAnalytics(false);
query.setAttributesToRetrieve(Arrays.asList("*"));
query.setFacets("category");
然后我可以使用getFacets()
进行搜索并请求方面。