史上最简单的Elasticsearch教程-第三章:以JSON为数据交互格式的RESTful API
基于Http协议,以JSON为数据交互格式的Restful风格API
(提前声明:文章由作者:张耀峰 结合自己生产中的使用经验整理,最终形成简单易懂的文章,写作不易,转载请注明)
(文章参考:Elasticsearch权威指南,Spark快速大数据分析文档,Elasticsearch官方文档,实际项目中的应用场景)
(帮到到您请点点关注,文章持续更新中!)
Git主页 https://github.com/Mydreamandreality
-
如何发送restful请求?:如下是一条请求的示例
curl -X<VERB> '<PROTOCOL>://<HOST>:<PORT>/<PATH>?<QUERY_STRING>' -d '<BODY>'
curl -X:不是必要的,可以忽略
-
VERB:HTTP的方法;GET POST PUT DELETE HEAD
-
PROTOCOL: http或者https的协议(如果你的环境是HTTPS时需要携带,HTTP时无需关注)
-
HOST: Elasticsearch集群中的任何一个节点的主机名,如果是在本地的节点,那么就叫 localhost
-
PORT: Elasticsearch HTTP服务所在的端口,默认为9200
-
PATH: API路径(PATH包含多个组件,稍后会写出来)
-
QUERY_STRING: 一些可选的查询请求参数,比如?pretty 参数将使请求返回更加美观 易读的JSON数据
-
BODY: 一个JSON格式的请求主体(不是必须的,类似于请求的参数)
OK,上面这就是一条标准的restful请求,下面我直接举个栗子吧,看的更直观一些,一下就懂了
启动ES和Kibana
进入Kibana的Dev Tools页面
//比如我这里一下计算集群中的文档数量
[code]curl -XGET 'http://localhost:9200/_count?pretty'-d' { "query": { "match_all": {} } } // {}这个部分的东西都是Body,说白了就是你要请求的参数,我这里选择的match_all所有 //其他的一一对应,就看的更直白了
-
当执行完之后, Elasticsearch返回一个类似 200 OK 的HTTP状态码和JSON格式的响应主体(除了HEAD请求)
-
上面的请求会得到如下的JSON格式的响应主体:
[code]{ "count": 46302, "_shards": { "total": 236, "successful": 236, "skipped": 0, "failed": 0 } }
-
但是各位发现没有,这样写也太麻烦了吧,本来Kibana就直接连接了我们的ES,那么我们的IP和端口都是Kibana已知的
-
所以<PROTOCOL>://<HOST>:<PORT>这个部分的东西可以完全省略掉
-
简写后如下图所示:
-
#下一章我会写一个增删改查的案例带大家熟悉ES原生的SQL语句(你可以这么理解,其实准确的说是基于HTTP的restful请求)
- 基于HTTP协议,以JSON为数据交互格式的RESTful API。
- [bigdata-088] go+ubuntu 一个最简单的api返回json格式数据的web app
- ASP.NET API(MVC) 对APP接口(Json格式)接收数据与返回数据的统一管理
- JQuery获取并解析php返回的json格式数据的简单示例
- 如何POST一个JSON格式的数据给Restful服务
- 移动端常用的数据交互格式有xml和json两种方式
- Android学习笔记:在Android平台上通过JSON格式与服务器端进行数据交互
- php学习笔记(三十)ajax请求和接收参数的实现方式(包括json数据格式的简单处理)
- Struts2整合jQuery和JSON进行简单的异步数据交换入门教程
- JavaScript解析json格式数据简单示例
- Restful Api Json 数据解析示例
- 史上最简单的Elasticsearch教程-第六章:Elasticsearch的restful之搜索查询(DSL)
- JavaScript解析json格式数据简单示例
- PHP如何自动识别第三方Restful API的内容,自动渲染成 json、xml、html、serialize、csv、php等数据
- 不同Json api生成json数据格式的区别
- 基于json数据格式实现的简单数据库——jsonDB
- 用python简单实现mysql数据同步到ElasticSearch的教程
- 最简单的c#处理程序输出json格式数据
- UE4 WCF RestFul 服务器 读取JSON 数据并解析 简单实例
- json-----一种简单的数据格式