elasticsearch - 如何从弹性云 API 控制台提交查询?
问题描述
我是弹性云界面的新手。它允许选择操作 get、post、put 和 del。我正在尝试提交查询,但我不知道确切的语法。例如:
tweet/_search?q=something
有效,但是:
tweet/_search?q={ "match_all": {} }
没有,返回解析器错误。我曾尝试使用双引号,但似乎随后它将查询作为字符串搜索。
解决方案
测试搜索 API 的首选方法是使用 POST 方法,在某些情况下,GET API 甚至会给出不正确的搜索结果,因为它会忽略搜索并提供前 10 个搜索结果进行match_all
查询。
Elasticsearch 支持两种方法GET
和POST
搜索,但使用GET
具有有效负载信息的方法在现代应用服务器上并不常见,尽管 Elasticsearch 实现它需要仔细设计您的查询。
不过,如果您想使用GET
API,那么对于复杂的查询,最好将其作为请求正文的一部分发送,我知道向GET
请求发送正文听起来很奇怪,但它确实有效。
推荐阅读
- vue.js - vue.js 反应性依赖类如何可能有许多观察者订阅者
- liferay-7.1 - Liferay 7 粘土管理工具栏
- php - 如何更改 woocommerce 标题的 .cart-title
- javascript - 承诺履行后重定向到javascript中的另一个页面?
- javascript - 如何在 v-for vue js 中创建增量变量
- r - 在 RStudio 中加载 Tidyverse 的问题
- api - 为不同的管道(:api和:browser)呈现不同的错误?
- vue.js - Vue Props 值未在简单测试中通过
- c - 为什么最后一个索引的节点在使用 igraph 生成的随机网络中没有过度代表?
- rest - 如何形成nexus 3的搜索网址