/ / Elasticsearch връщане на невалиден JSON - json, elastsearch

Elasticsearch връща невалиден JSON - json, elasticsearch

Имам интересен проблем в Elasticsearch. При извършване на търсене връща невалиден json, така че когато се опитам да стартирам, JSON.parse(response) това води до грешка при анализа (Node.js).

Ето как изглеждат данните от отговора:

{
"took":5,
"timed_out":false,
"_shards": {
"total":5,
"successful":5,
"failed":0
},
"hits": {
"total":28,
"max_score": 1.1264253,
"hits": [
{
"_index": "myindex",
"_type": "v1",
"_id":"AUsTvTc0HrKvNpcAkwza",
"_score": 1.1264253,
"_source": {
"term":"Value"
},
},
{
"_index": "myindex",
"_type": "v1",
"_id":"BRxvTMggf5NTMnxwzalF",
"_score": 0.1328153,
"_source": {
"term":"Other Value"
},
}
]
}
}

Както ще забележите след _source свойство има запетая, въпреки че това е последното свойство в този обект.

За да мога да анализирам това, трябва да пусна следния код:

var json = response.replace(/,s+}/g, "}");
json = JSON.parse(json);

Тогава ще се разбере, но това е просто помощ за лента. Това, което не мога да разбера е, ЗАЩО Elasticsearch връща ли JSON така?

Всяка помощ е много ценена!

Eric

Отговори:

0 за отговор № 1

Чувствам, че това е проблем, подобен на този Това е известна грешка и се появява, когато погрешно индексирате JSON документа. Поправете тук би било да премахнете този документ и да го индексирате отново правилно.