curl 是 client URL Library Functions 的缩写。curl是一种开源的命令行工具,用于发送HTTP请求和接收HTTP响应。它支持多种协议,包括HTTP、HTTPS、FTP、SMTP等,并可用于下载文件、测试API等多种用途。
curl的基本用法如下:
curl [options] [URL]
其中,URL是要访问的网址,options是curl的选项,用于控制请求和响应的行为。以下是一些常见的选项:
-X
:指定HTTP请求方法,例如GET、POST、PUT、DELETE等。-d
:指定请求体,例如请求参数或JSON数据。-H
:指定请求头,例如Content-Type、Authorization等。-b
:指定Cookie,例如sessionid=xxx。-o
:指定输出文件,例如-o filename.txt。-v
:显示请求和响应的详细信息。-i
:只显示响应头,不显示响应体。
以下是一些常见的用法示例:
-
发送GET请求
curl http://example.com
-
发送POST请求
curl -X POST -d "param1=value1¶m2=value2" http://example.com
-
发送PUT请求
curl -X PUT -d "key1=value1&key2=value2" http://example.com
-
发送DELETE请求
curl -X DELETE http://example.com
-
设置多个请求头
curl -H "Content-Type: application/json" -H "Authorization: Bearer xxx" http://example.com
-
设置Cookie
curl -b "cookie1=value1;cookie2=value2" http://example.com
-
发送JSON数据
curl -X POST -d '{"key1":"value1","key2":"value2"}' -H "Content-Type: application/json" http://example.com