zoukankan      html  css  js  c++  java
  • Elasticsearch 如何使用RESTful API


    所有其他语言可以使用 RESTful API 通过端口 9200 和 Elasticsearch 进行通信,你可以用你最喜爱的 web 客户端访问 Elasticsearch 。事实上,正如你所看到的,你甚至可以使用 curl 命令来和 Elasticsearch 交互。

    Elasticsearch 为以下语言提供了官方客户端--Groovy、JavaScript、.NET、 PHP、 Perl、 Python 和 Ruby—​还有很多社区提供的客户端和插件,所有这些都可以在 Elasticsearch Clients 中找到。

    一个 Elasticsearch 请求和任何 HTTP 请求一样由若干相同的部件组成:

    < > 标记的部件:

    VERB

    适当的 HTTP 方法谓词 : GETPOSTPUTHEAD 或者 DELETE

    PROTOCOL

    http 或者 https(如果你在 Elasticsearch 前面有一个 https 代理)

    HOST

    Elasticsearch 集群中任意节点的主机名,或者用 localhost 代表本地机器上的节点。

    PORT

    运行 Elasticsearch HTTP 服务的端口号,默认是 9200

    PATH

    API 的终端路径(例如 _count 将返回集群中文档数量)。Path 可能包含多个组件,例如:_cluster/stats_nodes/stats/jvm

    QUERY_STRING

    任意可选的查询字符串参数 (例如 ?pretty 将格式化地输出 JSON 返回值,使其更容易阅读)

    BODY

    一个 JSON 格式的请求体 (如果请求需要的话)


    例如,计算集群中文档的数量,我们可以用这个:

    curl -XGET 'http://localhost:9200/_count?pretty' -d '
    {
        "query": {
            "match_all": {}
        }
    }
    '

    Elasticsearch 返回一个 HTTP 状态码(例如:200 OK)和(除`HEAD`请求)一个 JSON 格式的返回值。前面的 curl 请求将返回一个像下面一样的 JSON 体:

    {
        "count" : 0,
        "_shards" : {
            "total" : 5,
            "successful" : 5,
            "failed" : 0
        }
    }
  • 相关阅读:
    jQuery之元素操作及事件绑定
    JS中常遇到的浏览器兼容问题和解决方法
    九九乘法表
    全选复习
    css基本知识
    js数组
    Spark常见错误问题汇总
    被问懵逼的Kafka面试题
    被问懵逼的数仓面试
    Flink模拟项目: 订单支付实时监控
  • 原文地址:https://www.cnblogs.com/dgwblog/p/12374558.html
Copyright © 2011-2022 走看看