Comments 4
Взгляд зацепился за пример из статьи:
curl -X GET 'localhost:9200/opengeodb/_suggest?pretty' -d '{
  "places" : {
    "text" : "B",
    "completion" : {
      "field" : "suggest"
    }
  }
}

Стало интересно, как выглядит этот запрос на уровне HTTP — правда, что данные отправляются в теле сообщения методом GET?

Запустил nc -l -p9200 в соседней консоли, оказалось все так и есть:
GET /opengeodb/_suggest?pretty HTTP/1.1
User-Agent: curl/7.35.0
Host: localhost:9200
Accept: */*
Content-Length: 93
Content-Type: application/x-www-form-urlencoded

{
  "places" : {
    "text" : "B",
    "completion" : {
      "field" : "suggest"
    }
  }
}

Здесь не только данные в теле GET, но и JSON с Content-type: application/x-www-form-urlencoded. Похоже, они не заморачиваются со стандартами, а делают как себе удобнее.
Да, так и есть, но всё таки, пример не кошерный, верно было бы использовать POST.
Only those users with full accounts are able to leave comments. Log in, please.