如何审视所有方面?

时间:2018-03-26 10:26:27

标签: java algolia

我使用传统的JEE应用程序与algolia,我需要检索一个facet的所有值(大约250),我得到的最多100。 根据文档,我不能请求超过100(algolia doc)。 我该怎么做? 附:我不想使用"写" API密钥,只有安全密钥。

2 个答案:

答案 0 :(得分:0)

不幸的是,使用maxFacetHits无法超越100限制。

解决方案可以是浏览整个索引以获取构面的所有可能值。当然,根据您的索引大小,可能需要一些时间,我们不建议这样做以实时显示它。 您可能希望缓存结果,并不时更新它。

此外,如果您的记录也存储在数据库中,则可能更容易从中检索这个构面值列表而不是使用Algolia。

答案 1 :(得分:0)

找到答案,因此我必须用以下属性填充查询。

    query.setHitsPerPage(10);
    query.setPage(0);
    query.setAnalytics(false);
    query.setAttributesToRetrieve(Arrays.asList("*"));
    query.setFacets("category");

然后我可以使用getFacets()进行搜索并请求方面。