版本: 6.8-7.15
简而言之,当 Elasticsearch 期望一个 JSON 对象(由 XContentParser.Token.START_OBJECT 表示)但在请求正文中没有找到时,就会发生此错误。这通常是由于 JSON 语法不正确或格式错误导致的。要解决此问题,您可以:1) 使用 JSON 验证器验证您的 JSON 语法;2) 确保您的 JSON 以 ‘{’ 开始并以 ‘}’ 结束;3) 检查所有键和字符串值都用双引号括起来;4) 确保所有嵌套的 JSON 对象和数组都正确格式化并正确关闭。
日志上下文 #
日志 “Expected [” + XContentParser.Token.START_OBJECT + “] in [” 的类名是 SearchSourceBuilder.java。我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考:
this.ignoreFailure = ignoreFailure;
this.fieldName = scriptFieldName;
this.script = script;
} else {
throw new ParsingException(parser.getTokenLocation(), "Expected [" + XContentParser.Token.START_OBJECT + "] in ["
+ parser.currentName() + "] but found [" + token + "]", parser.getTokenLocation());
}
public String fieldName() {





