curl [选项]
下载相关(最常用)
-O
按 URL 原文件名保存
示例:curl -O https://a.com/file.zip
-o <文件名>
自定义保存文件名
示例:curl -o app.zip https://a.com/file.zip
-L
跟随 301/302 跳转(GitHub/OSS 必加)
示例:curl -L -O https://github.com/.../file.zip
-C -
断点续传
示例:curl -L -C - -O https://a.com/big.tar.gz
-#
显示进度条(更干净)
示例:curl -L -# -O https://a.com/big.tar.gz
--limit-rate <速率>
限速下载(如 1m、500k)
示例:curl -L --limit-rate 1m -O https://a.com/big.tar.gz
请求方式
-X GET
指定 GET 请求
示例:curl -X GET https://api.xxx.com/v1/models
-X POST
指定 POST 请求
示例:curl -X POST https://api.xxx.com/v1/chat
-d <数据>
POST Body(表单或 JSON)
示例:curl -X POST -d "a=1&b=2" https://api.xxx.com
Header / 鉴权
-H "
设置请求头
示例:curl -H "Content-Type: application/json" https://api.xxx.com
-H "Authorization: Bearer
携带 Token
示例:curl -H "Authorization: Bearer $API_KEY" https://api.xxx.com
-H "Cookie: k=v"
携带 Cookie
示例:curl -H "Cookie: session=xxx" https://a.com
调试与排错
-v
显示完整请求/响应过程(排错必备)
示例:curl -v https://api.xxx.com
-I
只查看响应头(判断 302 / Content-Length)
示例:curl -I https://a.com/file.zip
--connect-timeout <秒>
连接超时
示例:curl --connect-timeout 5 https://a.com
--max-time <秒>
请求总超时
示例:curl --max-time 20 https://a.com
-k
忽略 HTTPS 证书(仅调试用)
示例:curl -k https://self-signed.xxx.com
Windows 专用
curl.exe
强制使用真实 curl(避免 PowerShell 别名)
示例:curl.exe -L -o a.zip https://a.com/a.zip
常用组合模板(直接复制)
稳定下载模板(生产推荐)
curl -L -C - -# -o file.bin https://example.com/file.bin
带 Token 下载模板
curl -L -C - -H "Authorization: Bearer $API_KEY" -o file.bin https://api.xxx.com/file.bin
接口调试模板
curl -v -X POST https://api.xxx.com/v1/chat
-H "Content-Type: application/json"
-H "Authorization: Bearer $API_KEY"
-d '{"model":"xxx","messages":[{"role":"user","content":"hi"}]}'
常见错误速记
下载到 HTML 页面 → 忘了 -L
401 / Missing API Key → Header 未传 Token
参数报错(Windows) → 用了 PowerShell 内置 curl
下载中断 → 没加 -C -
卡住不动 → 未设置超时