一、cURL的下载安装
-
Windows系统中下载安装
- 先查看系统中是否已安装:打开命令提示符,输入curl -V,若显示版本,则有,若提示没有curl命令则没有安装
- 若没有,则自己先下载压缩包:https://curl.haxx.se/download.html
curl版本选择 - 下载完成后,到系统中解压,把解压后的bin所在的路径加入到系统环境变量Path中。
-
Linux系统中下载安装
- 可以到网址(https://curl.haxx.se/download.html)中下载Linux版本,也可以用wget下载:
wget http://curl.haxx.se/download/curl-7.x.x.tar.gz
,版本根据自己的需求选择。 - 具体过程参考博客:Linux系统安装配置cURL
- 可以到网址(https://curl.haxx.se/download.html)中下载Linux版本,也可以用wget下载:
二、在Windows中使用cURL
- 直接在cmd里使用,需要注意:HTTP请求接口需用双引号("),不能用单引号('),否则会报错。
- 命令中参数
-X
的参数值是请求方法,通常是GET
、PUT
或POST
。-X
和方法中间可以用空格隔开,也可以不用。例如:-XPUT
。默认值是GET
- 通过HTTP发送的数据通常是JSON格式,用双引号将其包围,JSON本身包含的双引号用转义:
"{\"field\": \"value\"}"
- 用于请求的URL中有时会包含参数:
pretty=true
或者单是pretty
,这个用处是将本来展示在一行的JSON数据应答看起来更可读(类似将返回的数据进行format)
三、GET、PUT、POST、DELETE方法的使用
- GET:通过意思我们可以猜到,是用来获取资源的。在es中,一般是查看一些配置信息,查询数据时使用
GET
方法请求,这种查询都是实时的,可参考官方说明文档 - PUT:用来更新资源。创建索引、插入数据、更新数据
- POST:用来新建资源,也可用来更新资源。
- PUT和POST的区别:
1.在插入数据时,指定索引,用PUT
,不指定索引时,则用POST
。即PUT
是作用在某个具体的资源上,而POST
是作用在一个集合资源上。
2.更新时:PUT
会将新的json值完全替换旧的(只要id一样即可),而POST
方式只会更新相同字段的值,其他数据不会改变,新提交的字段若不存在则增加。例如有个字段原来有,新提交的没有包含这个字段,用前者更新后则没有了,有后者则会保存。
curl -XPUT "http://localhost:9200/[_index]/[_type]/[_id]" -d {}
curl -XPOST "http://localhost:9200/[_index]/[_type]/[_id]/_update" -d {}
3.在多次使用同一请求时,PUT第一次后不会再发生改变,而POST则会重复创建资源
4.参考文献:Elasticsearch中PUT和POST的区别 - DELETE:用来删除资源。例如:删除数据、删除索引等
- 另还可参考文献:HTTP中GET,POST和PUT的区别
四、常用的与Elasticsearch配置相关的curl命令
- 检测Elasticsearch当前节点是否启动成功:
curl "http://localhost:9200/?pretty"
使用curl命令查看Elasticsearch状态 - 查看集群健康状态:
curl "localhost:9200/_cat/health?v"
集群健康状态 - 查看集群节点列表:
curl "localhost:9200/_cat/nodes?v"
集群节点信息 - 查看当前集群状态:
curl "localhost:9200/_nodes/stats?pretty"
- 使用PUT请求创建一个索引:
curl -XPUT "localhost:9200/new-index/?pretty"
,new-index为索引名字,去掉-XPUT
,使用GET
方法即查看索引 新建索引test-index2 - 查看当前节点的所有索引:
curl "localhost:9200/_cat/indices?v"
当前节点所有索引信息
注:详细的创建索引(例如增加分片和副本数),查询数据,导入数据在之后的文本里介绍
网友评论