elasticsearch的HTTP请求包含如下部分:
curl -X<VERB> '<PROTOCOL>://<HOST>/<PATH>?<QUERY_STRING>' -d '<BODY>'
VERB
The appropriate HTTP method or verb: GET, POST, PUT, HEAD, or
DELETE.PROTOCOL
Either http or https (if you have an https proxy in front of Elasticsearch.)- HOST
The hostname of any node in your Elasticsearch cluster, or localhost for a node on your local machine. - PORT
The port running the Elasticsearch HTTP service, which defaults to 9200. - QUERY_STRING
Any optional query-string parameters (for example ?pretty will pretty-print the JSON response to make it easier to read.) - BODY
A JSON-encoded request body (if the request needs one.)
例如,统计整个集群的文档数:
curl -XGET 'http://localhost:9200/_count?pretty' -d '
{
"query": {
"match_all": {}
}
}'
结果:
{
"count" : 49920,
"_shards" : {
"total" : 3,
"successful" : 3,
"failed" : 0
}
}
http请求,返回包含header信息:
curl -i -XGET 'localhost:9200/'
结果:
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Content-Length: 348
{
"status" : 200,
"name" : "Mastermind of the UK",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "1.7.2",
"build_hash" : "e43676b1385b8125d647f593f7202acbd816e8ec",
"build_timestamp" : "2015-09-14T09:49:53Z",
"build_snapshot" : false,
"lucene_version" : "4.10.4"
},
"tagline" : "You Know, for Search"
}