gpt4 book ai didi

angular - Angular7 中的 ElasticSearch Post 调用抛出 400 错误

转载 作者:行者123 更新时间:2023-12-03 02:34:27 25 4
gpt4 key购买 nike

我正在尝试在 Angular 7 中进行 elasticSearch Post 调用,但它会引发 400 错误。

public elasticSearch<T>(): Observable<ElasticModel<T>> {
const reqBody = {
"query": {
"bool": {
"should": {
"match": {
"status": "IN_PROGRESS"
}
}
}
}
};
// tslint:disable-next-line:max-line-length
return this.http.get<ElasticResponseData<T>>(`${this.apiUri}/_search/query?indexName=` + 1 + `&query=` + JSON.stringify(reqBody) + `&size=` + 2 + `&from=` + (page - 1) * size);
// return this.http.get<ElasticResponseData<T>>(`${this.apiUri}/_search`);
}

我可以在不传递任何参数并定期进行 get call 时进行成功调用
return this.http.get<ElasticResponseData<T>>(`${this.apiUri}/_search`);

最佳答案

您发送的 JSON 查询应在 中发送。正文 的 HTTP 请求。您通过 发送网址

你有两个选择:

  • 使用 URI 搜索 DSL found here .这有一组更有限的查询选项,但它不需要请求正文
  • 修改您的 Angular 代码以在请求的实际正文中发送 JSON。根据this post , HttpClient 库没有简单的方法来处理 GET 请求。您可能必须为此编写自定义代码。
  • 关于angular - Angular7 中的 ElasticSearch Post 调用抛出 400 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59197176/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com