У меня проблема с поиском решения запроса специальных символов Unicode в Elastic search.
Когда я создаю этот индекс:
curl -XPUT http://localhost:9200/index/type/1 -d '{"name" : "Vrba u řeky"}'
и затем я пытаюсь найти фразу "řeky", все в порядке:
curl -XGET 'http://localhost:9200/index/type/_search?pretty=1' -d '{"query" : {"text" :
{ "_all" : "řeky" }}}'
{
"took" : 1,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"failed" : 0
},
"hits" : {
"total" : 1,
"max_score" : 0.10848885,
"hits" : [ {
"_index" : "index",
"_type" : "type",
"_id" : "1",
"_score" : 0.10848885, "_source" : {"name" : "Vrba u řeky"}
} ]
}
}
Но когда я пытаюсь найти то же слово, которое сбежало, я ничего не нахожу:
curl -XGET 'http://localhost:9200/index/type/_search?pretty=1' -d '{"query" : {"text" : { "_all" : "\\u0159eky" }}}'
Каким-то образом можно заставить упругую принимать экранированные строки в запросах вместо необработанных?
Спасибо.