仅从search中返回_source

当我用(官方)nodejs-elasticsearch库执行search查询时,是否有可能只检索_source文档? 根据文件,似乎有一种方式,

使用/ {index} / {type} / {id} / _ source端点来获取文档的_source字段,而不需要任何额外的内容。 例如:

curl -XGET 'http://localhost:9200/twitter/tweet/1/_source' 

并且nodejs库中相应的API调用是:

 client.getSource([params, [callback]]) 

但是,这种方法似乎只能以ID为基础检索文档。 我需要发出一个完整的search主体(使用filter和query_strings和whatnot),这种方法不支持。

我正在运行ES 1.4

你可以使用"fields" 。 请参阅下面的简化示例。 继续按照您的要求定制您的查询:

 { "fields": [ "_source" ], "query": { "match_all": {} } } 

Search _index_type_id_score字段的值将始终存在于Search API的响应中。