Curl
是基于 URL 语法
在命令行方式下工作的文件传输工具,它支持 FTP,FTPS,HTTP,HTTPS,GOPHER,TELNET,DICT,FILE及LDAP
等协议。
Curl
支持 HTTPS
认证,并且支持 HTTP
的POST,PUT
等方法,FTP
上传,kerberos
认证,HTTP
上传,代理服务器,cookies
,用户名/密码认证。
通过 HTTP 代理服务器上传文件到 FTP 服务器等等,功能十分强大。
今日分享一些日常工作中常用的场景
Curl 常用参数
-I 只显示请求头信息
-d HTTP POST方式传送数据, 以json格式
-o 把输出写到该文件中
-s 静默模式。不输出任何东西
-X 指定什么命令,如GET POST
-v 查看详情
-u 设置服务器的用户和密码
-H 要发送到服务端的自定义请求头
-w 完成后输出什么
-b 从文件中读取cookie信息
-F 上传文件
-# 显示进度条
示例:
curl -X GET http://www.xxx.com/search?data=123
示例:
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
示例:
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": {}}'
示例:
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": {}}'
示例:
curl -o file.html http://www.xxx.com/index.html
示例:
curl -u name:passwd http://www.xxx.com
示例:
curl -H "Content-Type:application/json" http://www.xxx.com
示例:
curl -b "cookie.txt" http://www.xxx.com
示例:
curl -b "cookie.txt" -F "file=@/temp/a.txt" http://www.xxx.com/api/upload -v
示例:
curl -# -o abc.jpg http://www.xxx.com/abc.JPG
示例:
curl -XDELETE http://10.8.102.102:9200/entity-beta-ars6_ars-reservation -uadmin:admin #清理ES
欢迎关注: 无量测试之道
公众号,回复: 领取资源
Python+Unittest框架API自动化、
Python+Unittest框架API自动化、
Python+Pytest框架API自动化、
Python+Pandas+Pyecharts大数据分析、
Python+Selenium框架Web的UI自动化、
Python+Appium框架APP的UI自动化、
Python编程学习资源干货、
Vue前端组件化框架开发、
资源和代码 免费送啦~
包含:数据分析、大数据、机器学习、测试开发、API接口自动化、测试运维、UI自动化、性能测试、代码检测、编程技术等。
微信搜索公众号: 无量测试之道
,添加关注,让我们一起共同成长 !