【发布时间】:2022-01-16 08:24:14
【问题描述】:
目前可以将GET 和POST 添加到我的集合中,但需要能够进行更复杂的查询,我正在使用bodybuilder 来构建请求并作为我的客户使用axios。
但是,使用 POST 不会返回我指定的结果,而只会返回我索引中的前 10 个项目,而使用 GET 我无法为这些复杂的请求发送正文,只剩下POST。
我已将我的数据从data:data 切换到body:data,结果相同。
目前这是我的POST,它再次返回数据,但不是我过滤的数据,只是我收藏的前 10 项。
任何见解将不胜感激!
export function searchQuery(search: string) {
var body = bodybuilder().query("query_string", "query", search).build();
const data = JSON.stringify(body);
axios({
url: `${SEARCH_URL}`,
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: data,
}).then((res) => {
console.log(res);
});
}
这是我当前的数据日志:
{"query":{"query_string":{"query":"Green"}}}
【问题讨论】:
-
请登录
data以确保您向 ES 发送正确的请求。 -
手动对 ES 运行记录的请求以确保它过滤数据也是有意义的
-
这是我当前的数据日志:
{"query":{"query_string":{"query":"Green"}}} -
如果您直接对 Elasticsearch 运行此查询,它是否返回正确的数据?
-
不,它只返回我收藏中的前 10 个项目
标签: javascript elasticsearch axios opensearch bodybuilder.js