如何在Postman中向Elasticsearch发送带条件查询的GET请求
解决方法
你可以用以下两种方案实现请求发送:
方案1:改用POST请求(推荐)
Elasticsearch的_search接口天生兼容GET和POST两种请求方法,是最通用的适配方案,操作步骤如下:
- 在Postman中将请求方法从
GET改为POST - 请求地址填你的ES服务地址加路径:
http://<你的ES节点地址>:9200/courses/_search - 切换到「Body」标签页,选择
raw格式,右侧类型选择JSON - 将你原有的查询JSON完整粘贴到Body输入框中,点击发送即可
方案2:GET请求通过查询参数传查询体
如果必须使用GET方法,你可以将JSON查询内容压缩后放到source查询参数中,同时附加source_content_type=application/json参数声明内容格式,示例请求URL如下:
http://<你的ES节点地址>:9200/courses/_search?source_content_type=application/json&source={"query":{"bool":{"must":[{"match":{"teacher.keyword":"Andrew Ng"}}]}}}
注意:该方案受浏览器、服务端的URL长度上限限制,仅适合短查询使用,长查询场景优先用方案1。
内容的提问来源于stack exchange,提问作者Mohsen Mahmoodzadeh
相关产品推荐
相关产品推荐

