我是否可以隐藏一些由ES作为响应返回的公共字段。
例如,如果我收到如下答复:
{
"took": 74,
"timed_out": false,
"_shards": {
"total": 15,
"successful": 15,
"failed": 0
},
"hits": {
"total": 24,
"max_score": 0.15932977,
"hits": [
{
"_index": "prashant",
"_type": "session",
"_id": "LeIDrUNmSKGC5Sl9Y8O0Zw",
"_score": 0.15932977,
"fields": {
"Time": [
"2014-01-08T15:01:26"
]
}
},
{
"_index": "prashant",
"_type": "session",
"_id": "dlpQGXk_TOyfNnUEG6skeQ",
"_score": 0.14296037,
"fields": {
"Time": [
"2014-01-08T15:01:26"
]
}
}
]
}
}现在,我希望ES响应而不需要 type、timed_out、_shards、total、成功、失败的值--我也不想要_index、_type的名称,因为我正在执行对特定索引和类型的查询。
那么,有没有一种方法可以这样过滤ES响应呢?
发布于 2016-02-15 20:42:20
发布于 2014-03-19 10:08:57
您可以通过指定在请求的搜索查询部分中返回的字段来限制搜索响应。
"search_request": {
"fields": [ "title", "content" ],
"query": ...
},这是Elasticsearch的标准字段筛选器,它不是集群特定的。请记住,您必须包括将用于稍后集群的字段。请参阅插件的文档(“关于字段映射的更多信息”)。
https://stackoverflow.com/questions/22500405
复制相似问题