java - 如何从响应中提取文档 ID - ElasticSearch Java Low Level Rest Client

标签 java elasticsearch

我使用以下代码将没有 id 的文档索引到 ElasticSearch 中:

Response response = restClient.performRequest(
            HttpPost.METHOD_NAME,
            "/posts/doc/",
            Collections.emptyMap(),
            entity);

我想从响应中提取 ElasticSearch 生成的文档 ID。有什么办法可以做到吗?

最佳答案

您需要读取该 response.getEntity().getContent() 的响应对象.

如果您使用 Jackson,则可以将流反序列化为 Map mapper.readValue(response.getEntity().getContent(), new TypeReference<Map<String, Object>>(){});

然后从 map 上读取_id字段。

希望这有帮助。

关于java - 如何从响应中提取文档 ID - ElasticSearch Java Low Level Rest Client,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46467376/

相关文章:

java - 如何使用 MUnit 2.1 和 Mule 4.1 编写 Java MUnit 测试

scala - SCALA和Elastic Search:将符号添加到类路径(Databricks)

elasticsearch - 更新在Elasticsearch中如何工作?

elasticsearch - RangeFacet基于时间戳字段

elasticsearch query string analyzer 针对不同的字段使用不同的分析器

docker - 在$ PATH中找不到Docker Elasticsearch 1.7可执行文件”

java - 公式操作算法

java - 使用 Mockito 验证无参数和私有(private)方法

java - 更新旧版 Java 以使用 TLS 1.1/1.2

java - HashMap使用对象实现一键多值