gpt4 book ai didi

elasticsearch - 您可以将 elasticsearch geo_distance 查询(或过滤器)作为 uri 请求执行吗

转载 作者:行者123 更新时间:2023-12-02 23:05:29 24 4
gpt4 key购买 nike

我想运行一个 elasticsearch 查询来查找给定点 10 英里内的项目。

我知道如何用帖子来做,但我想对 uri 中的所有内容使用 get。

我找到了下面的例子,但它不起作用。

http://localhost:9200/items/item/_search?{%22query%22:{%22filtered%22:{%22query%22:{%22match_all%22:{}},%22filter%22:{%22geo_distance%22:{%22distance%22:%220.1km%22,%22location%22:{%22lat%22:46.884106,%22lon%22:-71.377042}}}}}}

有什么方法可以做到这一点还是我坚持使用帖子?

最佳答案

关键是来源= 参数。不要与 _source 混淆。

http://localhost:9200/items/item/_search?source={%22query%22:{%22filtered%22:{%22query%22:{%22match_all%22:{}},%22filter%22:{%22geo_distance%22:{%22distance%22:%220.1km%22,%22location%22:{%22lat%22:46.884106,%22lon%22:-71.377042}}}}}}

我试过 ?q= 和 http://www.elasticsearch.org/guide/reference/api/search/uri-request/ 上列出的一些其他参数没有运气(来源未列出)。

我找到了 http://www.elasticsearch.org/guide/reference/api/在最底部它说

request body in query string

For libraries that don’t accept a request body for non-POST requests, you can pass the request body as the source query string parameter instead.



因此,构建您的查询/过滤器请求,将其全部设置在一行上并将其发送到源参数中。

不要将 q= 参数与 source= 一起使用,否则它会冲突并破坏查询,但是我尝试了 size= 和 from= 并且它们与 source 一起工作得很好。

关于elasticsearch - 您可以将 elasticsearch geo_distance 查询(或过滤器)作为 uri 请求执行吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18136712/

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