curl、wget使用
curl
curl -X GET http://127.0.0.1:9000/helloWorld
curl -H "Content-Type:application/json" -X POST --data '{"name":"zhangsan"}' http://127.0.0.1:9000/helloWorld
curl命令用法:
curl [options...] <url>
常用参数有:
--connect-timeout <seconds>:连接超时时间。
--cookie <name=string/file>:指定cookie。可以一个个指定,也可以指定文件。
如curl -H "Content-Type:application/json" -X POST --cookie "c1=v1; c2=v2" --data '{"name":"zhangsan"}' http://127.0.0.1:9000/helloWorld
-d或者--data <data>:指定http post body。
--data-urlencode <name=data/name@filename>:指定http post urlencoded data。
-F或者--form <name=content>:指定http post multipart data。
--form-string <name=string>:指定http post multipart data。
-H/--header <line>:指定请求头。如果指定多个请求头,则需要用多个-H。如-H "Content-Type:application/json" -H "Accept: application/json"
-m/--max-time <seconds>:整个request的超时时间,包括连接时间和数据传输时间。
--noproxy:指定哪些host不用代理,多个host用逗号分隔。
-o/--output <file>:将响应输出到指定文件中,默认是输出到当前窗口中。如-o /dev/null,这样的话,就看不到响应数据了。
-x/--proxy <host[:port]>:在指定host和port上用代理。
-X/--request <command>:指定是get请求还是post请求。
--retry <num>:请求异常时的重试次数。
--retry-delay <seconds>:每次重试,中间歇息多少秒。
-A/--user-agent <string>:指定user-agent。
-v:显示详情,不仅仅可以看响应数据,还可以看请求头、响应头等信息。
-s:silent模式。
-w:按照指定的格式输出。
time_namelookup:DNS解析域名的时间
time_commect:client和server端建立TCP连接的时间
time_total:client发出请求到server发送完所有的响应数据的时间
speed_download:下载速度,单位byte/s
示例:
1、发起get请求
curl -X GET "https://xx.com/xx/queryAppointmentData?username=zhangsan&password=123456"
curl发起get请求时,如果请求url上带了多个参数,则url必须用双引号括起来,否则第二个及以后的参数会丢,因为&的转义问题。曾经在调试生产问题时遇到,被坑了很久。
2、发起post请求
curl -H "Content-Type:application/json" -H "Cookie:a=A; b=B" -X POST --data '{"hospitalId":10001,"updateTime":"2021-07-05 19:00:00"}' -o /dev/null -s -w %{time_namelookup}::%{time_connect}::%{time_total}"\n" https://xx.com/xx/queryAppointmentData
用-o指定响应输出路径是/dev/null,表示不关心响应数据是什么
用-w指定了打印域名解析耗时、连接耗时、请求响应总耗时
-s指定silent模式,如果不用-s,则除了输出指定的耗时外,还会输出一些表头,如下
以上,域名解析耗时是0.271ms,连接耗时是0.431ms,总耗时是14.907s。
wget
wget https://datasets.clickhouse.tech/github_events_v2.native.xz
wget --no-proxy,关闭代理。
wget -bc,-b表示后台wget,-c表示断点续传。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
2019-10-20 linux第一篇:ssh脚本编写