CrowdingSpec

拥挤规范。拥挤通过限制具有相同字段值的搜索结果数量来提高搜索结果的多样性。例如,如果颜色字段上拥挤的 maxCount 为 3,mode 为 DROP_CROWDED_RESULTS,则所有页面最多会返回 3 个具有相同颜色的结果。

JSON 表示法
{
  "field": string,
  "maxCount": integer,
  "mode": enum (Mode)
}
字段
field

string

用于拥挤的字段。文档可以按 Document 对象中的字段进行拥挤设置。拥挤字段区分大小写。

maxCount

integer

每个字段值要保留的文档数上限。当至少有 maxCount 个之前的搜索结果的指定字段具有相同值时(依据 orderBy 中指定的顺序),后续具有相同值的搜索结果就会被“挤掉”。如果未指定,则默认值为 1。

mode

enum (Mode)

用于被挤掉文档的模式。

模式

这是一种枚举,用于描述要对挤掉的文档使用的模式。这些文档可能会被舍弃或降级到后面的页面中。

枚举
MODE_UNSPECIFIED 未指定的拥挤模式。在这种情况下,服务器行为默认为 Mode.DROP_CROWDED_RESULTS
DROP_CROWDED_RESULTS 舍弃被挤掉的搜索结果。
DEMOTE_CROWDED_RESULTS_TO_END 将被挤掉的搜索结果降级到后面的页面中。