[Linux] curl 使用指南
Contents
Curl 是一个常用的命令行数据传输工具,可以方便的从命令行创建网络请求。它支持众多协议,支持如 HTTP, HTTPS, FTP, FTPS, SFTP, IMAP, SMTP, POP3 等等协议。Curl 提供了很多强大的功能,可以利用它来进行 HTTP 请求、上传/下载文件等,且支持 Cookie、用户密码验证、代理隧道、限速等。
Curl 用于上传和下载指定 URL 的数据,它是一个客户端(client-side)工具,一个客户端 URL 工具。这也是它的名字的由来。
curl 使用指南
发起一个 HTTP GET 请求
|
|
可以使用-o ip.txt
选项将响应结果输出到文件
重定向跟踪 (-L)
当请求一个 URL 返回 301 之类的重定向响应时,可以使用 -L 参数来自动重定向跟踪响应头里的Location
获取 HTTP 响应头 (-i)
使用-i
参数可以参看请求 URL 的响应头。
如果只想获取响应头,可以使用-I
参数。
|
|
构造 GET 查询参数 (-G)
可以通过 -G
参数来构造 URL 的查询字符串
|
|
注意:如果忘记了-G
参数,curl 会发出 POST 请求。
如果数据需要 URL 编码,可以结合使用--data--urlencode
参数。
|
|
发送一个 HTTP POST 请求
默认情况下,curl 发送的是 GET 请求。要使其发送 POST 请求,需要使用-X POST
命令行参数。
|
|
使用-d
选项添加请求数据
|
|
使用-H
选项添加请求头
|
|
HTTP 认证 (-u)
如果目标 URL 需要 HTTP Basic Authentication,可以通过-u参数传递user:password来鉴权
|
|
打印请求的详细日志 (-v)
使用 -v 参数可以打印出 curl 请求的所有请求与响应详细日志。它是–verbose 的简写。
|
|
限制 HTTP 带宽 (–limit-rate)
默认情况下,curl 使用最大可用带宽,但是通常我们需要放慢速度进行测试。可以使用–limit-rate 来限制 curl 的请求和响应的带宽,让请求与响应变慢。
|
|