高亮显示与分页
本章定位:搜索体验的两个基础功能——高亮让用户看到"为什么这个结果被匹配",分页让大量结果分批次展示。
定义与作用
高亮(Highlight):在搜索结果中标注匹配的关键词,默认用 <em> 标签包裹。分页(Pagination):通过 from(跳过数量)和 size(返回数量)控制单次返回的结果数量。
完整示例:杨英的搜索展示
POST /courses/_search
{
"from": 0, "size": 10,
"query": {
"multi_match": {
"query": "Python 数据",
"fields": ["title^3", "description"]
}
},
"highlight": {
"pre_tags": ["<mark>"], "post_tags": ["</mark>"],
"fields": {
"title": { "number_of_fragments": 0 },
"description": { "fragment_size": 100, "number_of_fragments": 1 }
}
}
}
小结
高亮三种模式:unified(默认)、plain(性能好)、fvh(大字段快)。分页 from+size 限制 max_result_window=10000,超深分页用 search_after。