Ошибка Ruflin / Elastica + ES6: заголовок Content-Type [application / x-www-form-urlencoded] не поддерживается - PullRequest
0 голосов
/ 19 декабря 2018

Может кто-нибудь помочь мне, пожалуйста, исправьте проблему с заголовками, отправленными из Ruflin / Elastica в Elasticsearch 6. Кажется, Ruflin / Elastica - это старая версия, которая не совсем совместима с Elasticsearch 6. Как я узнал здесь Elasticsearch меняет свое поведение, связанное с заголовками запросов, как говорит доктор: Начиная с Elasticsearch 6.0, все запросы REST, которые включают тело, также должны предоставлять правильный тип контента для этого тела.

Я не могу изменить версию Ruflin/ Elastica библиотека, поэтому я хотел бы исправить заголовок типа контента, но не знаю, как это сделать.Может кто-нибудь помочь мне, пожалуйста?Код выглядит так:

$query = sprintf('{
            "size": %s,
            "_source": %s,
            "query": {
                "bool": {
                    "filter": {
                        "terms": {
                            "ico": %s
                        }
                    }
                }
            }
        }', $this->limit, json_encode($cols), json_encode($icos));

$elastica = new Elastica\Client(["host" => 'localhost']);

$resp = $elastica->request('search_4/_search', Elastica\Request::POST, json_decode($query, TRUE))->getData();
...