别再手动拼 URL:curl 的四个日常用法
接口通不通、服务起来没有、下载链接对不对,这些问题在服务器上基本都离不开 curl。它是 Linux 自带的最常用网络工具,学会四个用法,日常排查网络问题不用再开浏览器、不用再猜。
1. 先看状态码,别只看页面
打开一个网址,最先要确认的是它返回了什么状态码。-I 只取响应头,不下载正文:
curl -I https://example.com
看到 HTTP/2 200 就是通的,301、302 是跳转,404 是路径错了,502、503 多半是后端服务没起来。排查时先看状态码,再决定往哪一步查,比直接看页面内容快得多。
2. 出错时加 -v,看清每一步
请求失败但不知道卡在哪一步时,用 -v 打开详细输出:
curl -v https://example.com/api/health
它会把 DNS 解析、TCP 连接、TLS 握手、发送请求头、收到响应头每一步都打印出来。卡在 DNS 就是域名问题,卡在 TLS 就是证书问题,连接超时就是网络或防火墙问题。定位到哪一步,后面的排查方向就清楚了。
3. 发 POST 请求:测接口不用装工具
测一个 POST 接口,不用装 Postman,一条命令就够:
curl -X POST https://example.com/api/login \
-H "Content-Type: application/json" \
-d '{"username":"test","password":"123456"}'
-H 加请求头,-d 带请求体。想把返回的 JSON 看得清楚一点,可以管道给 jq:
curl -s https://example.com/api/status | jq .
-s 是静默模式,不输出进度条,只输出正文,适合管道和脚本里用。
4. 下载文件:断点续传和限速
下载大文件时,-O 按远程文件名保存,-C - 支持断点续传:
curl -O https://example.com/big-file.tar.gz
curl -C - -O https://example.com/big-file.tar.gz
第二条命令在下载中断后接着下,不用从头再来。服务器带宽紧张时,还可以用 --limit-rate 限速,避免一次下载把带宽占满:
curl --limit-rate 1M -O https://example.com/big-file.tar.gz
小结
-I 看状态码,-v 看每一步,-X POST 加 -H、-d 测接口,-O 加 -C - 下载续传。四个用法覆盖了日常大部分场景,curl 不用记太多参数,先把这四个用熟,排查网络问题就有了固定的套路。
- 点赞
- 收藏
- 关注作者
评论(0)