Подтвердить что ты не робот

Запрос на основе URI Elasticsearch с оператором AND

Как указать операцию AND в запросе на основе URI? Я ищу что-то вроде:

http://localhost:9200/_search?q="profiletype:student AND username:s*"
4b9b3361

Ответ 2

Для поиска URI в ElasticSearch вы можете использовать либо оператор AND profiletype:student AND username:s, как вы говорите, но без кавычек:

  _search?q=profiletype:student AND username:s*

Вы также можете установить оператор по умолчанию на AND

  _search?q=profiletype:student username:s*&default_operator=AND

Или вы можете использовать оператор + для условий, которые должны присутствовать, т.е. использовать +profiletype:student +username:s в качестве строки запроса. Однако это не работает без кодирования URL. В кодировке URL + есть %2B, а пробел %20, поэтому альтернативой будет

  _search?q=%2Bprofiletype:student%20%2Busername:s*

Ответ 3

Мне пришлось объединить оператор по умолчанию и знак +, чтобы он работал

curl -XGET 'localhost:9200/apm/inventory/_search?default_operator=AND&q=tenant_id:t2+_all:node_1'

Ответ 4

Вы можете попробовать строку ниже.

http://localhost:9200/_search?q=profiletype:student%20AND%20username:s*

http://localhost:9200/_search?q=profiletype:student AND username:s*