我需要使用带有elasticsearch后端的API。我对该服务器没有任何控制,但我需要减少响应中的字段。我已经想出了如何使用“filter_path”以及如何按名称包含特定字段。但我没有找到任何关于如何通过数据解雇特定字段的内容。我已经尝试过使用嵌套术语但没有正面结果。
我的实际JSON查询如下所示:
{
"_source" : ["field1", "field2", "field3.1", "field3.2"],
"query": {
"bool" : {
"must" : {
"query_string" : {
"query" : "*"
}
}
}
}
}
目前的输出如下:
{
"hits": {
"hits": [
{
"_source": {
"field1": "data",
"field2": "data",
"field3": [
{
"field3.1": "SPECIALDATA",
"field3.2": "SPECIALDATA"
},
{
"field3.1": "data",
"field3.2": "data"
},
{
"field3.1": "data",
"field3.2": "data"
}
]
}
}
我只想要带有SPECIALDATA的field3.1和3.2。 3.1和3.2的所有其他字段都应该被驳回。
这可能吗?如果是这样,我如何更改查询以实现此目的?