|
* O8 `* t9 P, S; ]( u" ? curl 介绍:curl是基于URL语法在命令行方式下工作的文件传输工具,它支持FTP,FTPS,HTTP,HTTPS,GOPHER,TELNET,DICT,FILE及LDAP等协议curl支持HTTPS认证,并且支持HTTP的POST,PUT等方法,FTP上传,kerberos认证,HTTP上传,代理服务器,cookies,用户名/密码认证,通过http代理服务器上传文件到FTP服务器等等,功能十分强大。 - p- k7 H( h. w/ b
本文主要分享一些常用的场景curl 常用参数:-I 只显示请求头信息-d HTTP POST方式传送数据,以json格式-o 把输出写到该文件中-s 静默模式不输出任何东西-X 指定什么命令,如GET POST。
# x) P0 L/ Q/ r Z -v 查看详情-u 设置服务器的用户和密码-H 要发送到服务端的自定义请求头-w 完成后输出什么-b 从文件中读取cookie信息-F 上传文件-# 显示进度条No 1:curl 命令发送get请求示例:curl -X GET http://www.xxx.com/search?data=123
/ K1 n- M+ g3 S9 `; s/ k No 2:curl 命令发送get请求后统计各阶段耗时curl -o /dev/null -s -w "time_namelookup:%{time_namelookup}\ntime_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" www.xxx.com 8 U* h% d3 L: ]/ O/ c8 L
No 3:curl 命令发送post请求curl www.xxx.com/api/openservice/query/queryProperty -H "Content-Type:application/json" -X POST -d {"baseCondition": {"propertyId": 1, "dateRange": {"fromDate": "2019-07-04", "toDate": "2019-07-05"}, "adults": 1,"children": 0, "rooms": 1, "channelId": 2, "sellCategories": ["PUBLIC", "NEGOTIATE"]},"extensionCondition": {"rateIds": [], "unableFlag":"False", "currency": "CNY"}, "context": {}} & o6 r( E1 W1 Z; Z( Q
No 4:curl 命令发送post请求后统计各阶段耗时curl -o /dev/null -s -w "time_namelookup:%{time_namelookup}\ntime_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" www.xxx.com/api/openservice/query/queryProperty -H "Content-Type:application/json" -X POST -d {"baseCondition": {"propertyId": 1, "dateRange": {"fromDate": "2019-07-04", "toDate": "2019-07-05"}, "adults": 1,"children": 0, "rooms": 1, "channelId": 2, "sellCategories": ["PUBLIC", "NEGOTIATE"]},"extensionCondition": {"rateIds": [], "unableFlag":"False", "currency": "CNY"}, "context": {}} ( a) s) R$ W/ _8 x8 l6 y- ~
No 5:curl 命令保存文件到本地curl -o file.html http://www.xxx.com/index.htmlNo 6:curl 命令登录服务curl -u name:passwd http://www.xxx.com
. P' ~& x8 `: Q% `$ i2 n No 7:curl 命令构造一个请求头curl -H "Content-Type:application/json" http://www.xxx.comNo 8:curl 命令从文件中读取cookie 信息
* p4 }7 t+ T6 I) {- s curl -b "cookie.txt" http://www.xxx.comNo 9:curl 命令上传文件curl -b "cookie.txt" -F "file=@/temp/a.txt" http://www.xxx.com/api/upload -v 6 I; b4 F* h. p2 q5 f
No 10:curl 命令下载文件并显示下载进度curl -# -o abc.jpg http://www.xxx.com/abc.JPGNo 11:curl 命令清除es 里面的数据curl -XDELETE ( ^2 h: V- o1 T$ d8 m
http://10.8.102.102:9200/entity-beta-ars6_ars-reservation -uadmin:admin #清理ES 6 N! j: P2 e: K' A- Q/ @* F; G B
5 t# h5 l; d8 `; f2 c4 Y; A* }
/ @ I; ]+ s1 t3 ~
9 M2 d& V ^1 _6 b: r1 k
1 q( y" b# }& n \, r |