为什么elasticsearch不接受JSON字段作为文本?

问题描述 投票:0回答:1

我有一个包含非确定性 JSON 对象的字段。我希望将此字段索引为简单文本,以便我可以在需要时搜索其内容。

但是我从弹性“无法在 1:351 处获取 START_OBJECT 上的文本”中收到错误。看起来它检测到它是 JSON 并拒绝它。

有办法让它发挥作用还是我的方法不对?

elasticsearch
1个回答
0
投票

这是可能的,但您需要将 JSON 序列化为文本。

假设您的字段名为“json”,而不是像这样发送

{
   "json": {
      "foo": {
         "bar": 3
      }
   }
}

您需要这样发送:

{
   "json": "{\"foo\": {\"bar\": 3}}"
}

尽管我不确定您稍后能否以有效的方式“搜索”该字段。但还是尝试一下吧。

© www.soinside.com 2019 - 2024. All rights reserved.