使用es查询数据的时候会遇到提示match/range [match] malformed query, expected [END_OBJECT] but found [FIELD_NAME]错误,这个时候你需要检查一下自己的query条件的大括号,这类问题基本是花括号的位置不正确引起的,例如
body = {"query": {
"bool": {
'must': [{"match_phrase": {'***': '***'}},
{'match_phrase': {'****': '****'}},
{'term': {'**': '**'}}]
}},
"from": **,
"size":**
}
是正确的,如果是这样就会报上述错误,下面是错误示范文章来源:https://www.toymoban.com/news/detail-529578.html
body = {"query": {
"bool": {
'must': [{"match_phrase": {'***': '***'}},
{'match_phrase': {'****': '****'}},
{'term': {'**': '**'}}]
},
"from": **,
"size": **
}
}
大家看出区别了吗,就是query的括号位置问题,因为在query里面没有from和size方法。文章来源地址https://www.toymoban.com/news/detail-529578.html
到了这里,关于解决match/range [match] malformed query, expected [END_OBJECT] but found [FIELD_NAME]的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!