【问题标题】:Change Field name in elasticsearch response更改弹性搜索响应中的字段名称
【发布时间】:2025-12-09 10:35:01
【问题描述】:

我需要更改弹性搜索响应中的字段名称(例如,将“标题”更改为“标题”)。我想避免解析需要很多时间的 Json 响应。 有什么办法吗?

【问题讨论】:

  • 你使用什么客户端技术,Java?你能在你提出请求并得到响应的地方展示一下代码吗?
  • 是的。我正在使用 Java API 进行弹性搜索。
  • 你能解释一下你的用例以及你为什么需要这个吗?

标签: java json elasticsearch


【解决方案1】:

恐怕这在弹性搜索中可能不可用。您可能必须解析响应。考虑

别名

Apache Solr 4.0 中引入但目前在 ElasticSearch 中不可用的功能之一是转换结果文档的能力。首先,Solr 允许您为返回的字段设置别名,例如,您可以根据需要将字段 price_usd 或 price_eur 作为价格返回。第二件事是能够将函数返回的值作为结果(或字段)中的(伪)字段返回。 Solr 还能够返回以给定前缀开头的字段(例如所有以 price 开头的字段)。除了获取函数值作为动态添加到匹配文档的字段的能力之外,其他功能并不是开创性的,尽管在某些情况下它们可能很方便。

来自http://blog.sematext.com/2012/10/01/solr-vs-elasticsearch-part-3-searching/

【讨论】: