--- title: "查询中出现未知的键" date: 2026-03-18 lastmod: 2026-03-18 description: "Elasticsearch查询中遇到未知键导致的错误及解决方案" tags: ["Elasticsearch", "查询键", "语法错误", "版本兼容"] summary: "版本: 6.8-7.15 简而言之,当Elasticsearch在查询中遇到未知的键时,就会出现此错误。这通常是由于查询中存在拼写错误,或者您正在使用的功能在您使用的Elasticsearch版本中不存在造成的。要解决此问题,您可以检查查询是否存在拼写错误或语法不正确。如果查询正确,您可能需要将Elasticsearch版本升级到支持您尝试使用的功能的版本。 日志上下文 # 日志"Unknown key for a " + token + " in [“的类名是 SearchSourceBuilder.java。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用: if (SCRIPT_FIELD.match(currentFieldName, parser.getDeprecationHandler())) { script = Script.parse(parser); } else if (IGNORE_FAILURE_FIELD.match(currentFieldName, parser.getDeprecationHandler())) { ignoreFailure = parser.booleanValue(); } else { throw new ParsingException(parser.getTokenLocation(), "Unknown key for a " + token + " in [" + currentFieldName + "].", parser.getTokenLocation()); } } else if (token == XContentParser.Token.START_OBJECT) { if (SCRIPT_FIELD.match(currentFieldName, parser.getDeprecationHandler())) { script = Script." --- > **版本:** 6.8-7.15 简而言之,当Elasticsearch在查询中遇到未知的键时,就会出现此错误。这通常是由于查询中存在拼写错误,或者您正在使用的功能在您使用的Elasticsearch版本中不存在造成的。要解决此问题,您可以检查查询是否存在拼写错误或语法不正确。如果查询正确,您可能需要将Elasticsearch版本升级到支持您尝试使用的功能的版本。 ## 日志上下文 日志"Unknown key for a " + token + " in ["的类名是[SearchSourceBuilder.java](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/)。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用: ```java if (SCRIPT_FIELD.match(currentFieldName, parser.getDeprecationHandler())) { script = Script.parse(parser); } else if (IGNORE_FAILURE_FIELD.match(currentFieldName, parser.getDeprecationHandler())) { ignoreFailure = parser.booleanValue(); } else { throw new ParsingException(parser.getTokenLocation(), "Unknown key for a " + token + " in [" + currentFieldName + "].", parser.getTokenLocation()); } } else if (token == XContentParser.Token.START_OBJECT) { if (SCRIPT_FIELD.match(currentFieldName, parser.getDeprecationHandler())) { script = Script.parse(parser); ```