Почему этот эластичный поисковый запрос не работает? - PullRequest
0 голосов
/ 30 сентября 2019
curl -s -X POST "localhost:9200/usakeywords/keyword/_bulk" -H 'Content-Type: application/json' -d '
{ "kwd":"zelda computer game","volume":170,"cpc":0.45116,"cmp":0.627}
{ "kwd":"nintendo zelda breath","volume":10,"cpc":0.195669,"cmp":0.6753 }
{ "kwd":"zelda","volume":550000,"cpc":0.231398,"cmp":0.3506}
{ "kwd":"link zelda","volume":60500,"cpc":0.402323,"cmp":0.2636 }
'

Ответ, который я получаю ...

{"error": {"root_cause": [{"type": "invalid_argument_exception", "reason": "Неправильная строка действия / метаданных"[2], обнаружена ожидаемая START_OBJECT или END_OBJECT ошибка [VALUE_STRING] "}]," type ":" invalid_argument_exception "," reason ":" Неправильная строка действия / метаданных [2], ожидаемая START_OBJECT или END_OBJECT найдена [VALUE_STRING]"}," status ": 400}

Есть идеи?

1 Ответ

0 голосов
/ 01 октября 2019

Массовый API может использоваться для добавления, изменения и удаления записей, поэтому вам необходимо чередовать строки во входных данных: действие, данные, действие, данные. Например:

{ "index": {} }
{ "kwd":"zelda computer game","volume":170,"cpc":0.45116,"cmp":0.627}
{ "index": {} }
{ "kwd":"nintendo zelda breath","volume":10,"cpc":0.195669,"cmp":0.6753 }
{ "index": {} }
{ "kwd":"zelda","volume":550000,"cpc":0.231398,"cmp":0.3506}
{ "index": {} }
{ "kwd":"link zelda","volume":60500,"cpc":0.402323,"cmp":0.2636 }
'

См. Документацию здесь: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...