跳到主要内容

curl 参数和使用

· 阅读需 2 分钟
素明诚
Full stack development

基本参数介绍

注意curl 命令中的参数是区分大小写的

参数描述
-A 或 --user-agent在请求中设置 User-Agent。
-b 或 --cookie传递 cookie 到服务器或从文件中读取 cookie 数据。
-c 或 --cookie-jar把服务器发送的所有 cookies 写入这个文件。
-d 或 --data发送 POST 请求的数据。
-e 或 --referer在请求中包含一个 'referer' 头,用来模拟用户从指定的链接访问。
-F 或 --form模拟提交表单。
-H 或 --header添加自定义头部到请求中。
-i 或 --include输出时包括协议头信息。
-I 或 --head只获取文档的 HTTP 头部。
-k 或 --insecure允许 curl 执行“不安全”的 SSL 连接和传输。
-L 或 --location跟随重定向。
-o 或 --output将输出保存到文件而不是打印到标准输出。
-O 或 --remote-name使用 URL 的最后一部分作为文件名保存下载的文件。
-s 或 --silent静默模式。不输出任何东西。
-T 或 --upload-file上传文件。
-u 或 --user使用指定的用户和密码进行认证。
-v 或 --verbose让 curl 提供更多信息,用于调试。
-X 或 --request指定请求的命令(如 GET、POST)。
-# 或 --progress-bar使用进度条显示文件传输进度。

获取网页内容并保存到文件

curl -o google.html http://www.google.com

这里使用 -o 参数将 www.google.com 的首页内容保存到 google.html 文件中。

发送 POST 请求

curl -d "username=example&password=secret" http://www.google.com/login

使用 -d 参数提供表单数据,向 www.google.com/login 发送 POST 请求。

添加请求头

curl -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" http://www.google.com/api

使用 -H 添加自定义请求头,这里添加了 Content-TypeAuthorization 两个头部信息。

使用 HTTPS 并忽略证书验证

curl -k https://localhost/api

使用 -k 参数忽略 SSL 证书验证,适用于开发环境或自签名证书的情况。