目录
curl 是一个强大的命令行工具,用于传输数据,支持很多协议,包括 HTTP、HTTPS、FTP、SMTP 等。它在开发、测试和调试 APIs 时非常有用。以下是一些常用的 curl 命令及参数的简要说明:
1.指定请求方法
-X 或 --request:指定 HTTP 请求方法(例如 GET、POST、PUT、DELETE 等)。
curl -X POST http://example.com
2.添加请求头
-H 或 --header:添加一个 HTTP 请求头。
curl -H "Content-Type: application/json" http://example.com
3.随post请求发送数据
-d 或 --data:随 POST 请求发送数据。
curl -d "param1=value1¶m2=value2" -X POST http://example.com
4.随post请求发送原始数据
--data-raw:随 POST 请求发送原始数据。
curl --data-raw '{"json":true}' http://example.com
5.使用表单数据发送post请求
-F 或 --form:使用表单数据发送 POST 请求。
curl -F "file=@/path/to/local/file" http://example.com/upload
6.提供认证信息
-u 或 --user:提供认证信息(用户名和密码)。
curl -u username:password http://example.com
7.在输出中包括http响应头
-i 或 --include:在输出中包括 HTTP 响应头。
curl -i http://example.com
8.将输出写入文件而不是标准输出
-o 或 --output:将输出写入到文件而不是标准输出。
curl -o filename.html http://example.com
9.根据远程文件名将输出写入文件
-O 或 --remote-name:根据远程文件名将输出写入文件。
curl -O http://example.com/filen ame.html
10.跟随重定向
-L 或 --location:跟随重定向。
curl -L http://example.com
11.忽略ssl证书认证
-k 或 --insecure:允许不安全的服务器连接,即忽略 SSL 证书验证。
curl -k https://example.com
12.不显示进度条和错误信息
-s 或 --silent:静默模式。不显示进度条和错误信息。
curl -s http://example.com
13.提供详细的请求和响应信息
-v 或 --verbose:提供详细的请求和响应信息。
curl -v http://example.com
14.通过代理服务器进行请求
-X 或 --proxy:通过代理服务器进行请求。
curl -x http://proxyserver:port http://example.com
15.以二进制方式发送数据
--data-binary:以二进制方式发送数据。
curl --data-binary "@file.bin" http://example.com
16.上传文件
-T 或 --upload-file:上传文件。
curl -T file.txt ftp://ftp.example.com/file.txt