您的位置:首页 > 理论基础 > 计算机网络

通过HTTP RESTful API 操作elasticsearch

2015-09-29 18:52 441 查看
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"
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: