基于HTTP协议,以JSON为数据交互格式的RESTful API。

来源:互联网 发布:淘宝饰品店铺名字大全 编辑:程序博客网 时间:2024/06/06 20:21

向Elasticsearch发出的请求的组成部分与其他普通的HTTP请求是一样的:

curl -X<VERB> '<PROTOCOL>://<HOST>/<PORT>?<QUERY_STRING>' -d '<BODY>'

  • VERB                             HTTP方法:GET、POST、PUT、HEAD、DELETE
  • PROTOCOL                  http或者https协议(只有在Elasticsearch前面有https代理的时候可用)
  • HOST                             Elasticsearch集群中的任何一个节点的主机名,如果是在本地的节点,那么就叫localhost
  • PORT                             Elasticsearch HTTP服务所在的端口,默认为9200
  • QUERY_STRING         一些可选的查询请求参数,例如?pretty参数将使请求返回更加美观易读的JSON数据。
  • BODY                             一个JSON格式的请求主体(如果请求需要的话)

举例说明,为了计算集群中的文档数量,我们可以这样做:

        curl -XGET 'http://localhost:9200/_count?pretty' -d '

        {

             "query" : {

                      "match_all" : {}

             }

        }

        '

Elasticsearch返回一个类似 “200 OK”的HTTP状态码和JSON格式的响应主体(除了HEAD请求)。上面的请求会得到如下的JSON格式的响应主体:

{

  "count" : 0 ,

  "_shards" : {

         "total" : 5,

         "successful" : 5,

          "failed" : 0

   }

}


我们看不到HTTP头是因为我们没有让curl显示它们,如果要显示,使用curl命令后跟-i参数:

curl -i -XGET 'localhost:9200'



阅读全文
0 0
原创粉丝点击