弹性搜索uri调用返回一个字段

时间:2017-10-11 08:06:40

标签: asp.net-mvc api elasticsearch return uri

我在我的项目中使用弹性搜索。出于多种原因,我必须通过URI调用Elastic。喜欢 : " http://localhost:9200//demo/localetranslatemodel/_search?default_operator=AND&q=localeId%3Adaefa52a-cada-4370-9ae5-6bcfb50a9cf8+name%3AlblCommon_PartCost"

并返回:

{

    "took": 3,
    "timed_out": false,
    "_shards": {
    "total": 5,
    "successful": 5,
    "failed": 0
},
"hits": {
    "total": 1,
    "max_score": 8.272978,
    "hits": [
        {
            "_index": "demo",
            "_type": "localetranslatemodel",
            "_id": "31bb0b3f-ace5-4007-b619-009f3e76bafc",
            "_score": 8.272978,
            "_source": {
                "translate": "Part cost",
                "localeId": "daefa52a-cada-4370-9ae5-6bcfb50a9cf8",
                "name": "lblCommon_PartCost",
                "id": "31bb0b3f-ace5-4007-b619-009f3e76bafc"
            }
        }
    ]
}
}

所以我的问题是:我能否仅返回"翻译:"部分成本" ?或者,对我来说更好,只有"零件成本" ? 我在ASP .NET项目中使用HttpClient来调用Api。 非常感谢您提供有用的答案,我试图这样做一个星期

如果我问一些不可能的事情,所有解决方案对我都有好处。 (比如只返回_source)

1 个答案:

答案 0 :(得分:0)

呀。响应过滤可以做到这一点。

阅读:https://www.elastic.co/guide/en/elasticsearch/reference/5.6/common-options.html#common-options-response-filtering

此外,您可以询问特定字段,而不是获取完整的_source字段。取决于你真正需要的是什么。见https://www.elastic.co/guide/en/elasticsearch/reference/5.6/search-request-source-filtering.html