本篇讲一个小技巧
比如你写了七八十行的语句,运行发现报错了,这时候你也不知道为什么会错,哪里错了。可以借助_validate api来验证。
具体写法如下:
GET /test_index/test_type/_validate/query?explain
{
"query" : {
"math" : {
"test_field" : "test"
}
}
}
重点在于
/_validate/query?explain
想验证哪个语句,就在其后追加/_validate/query?explain
即可。
运行结果:
{
"valid": false,
"error": "org.elasticsearch.common.ParsingException: no [query] registered for [math]"
}
很明白的告诉我们,写错单词了,应该写match,而不是math
修正后
GET /test_index/test_type/_validate/query?explain
{
"query" : {
"match" : {
"test_field" : "test"
}
}
}
再看结果
{
"valid": true,
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"explanations": [
{
"index": "test_index",
"valid": true,
"explanation": "+test_field:test #(#_type:test_type)"
}
]
}
valid:true,验证成功。
若有兴趣,欢迎来加入群,【Java初学者学习交流群】:458430385,此群有Java开发人员、UI设计人员和前端工程师。有问必答,共同探讨学习,一起进步!
欢迎关注我的微信公众号【Java码农社区】,会定时推送各种干货:
qrcode_for_gh_577b64e73701_258.jpg
网友评论