一、简介
curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。
它的功能非常强大,命令行参数多达几十种。如果熟练的话,完全可以取代 Postman 这一类的图形界面工具。
二、语法
如果在一个curl命令中不指定具体的方法,那么默认的就是使用GET方法。对于其它的方法,可以在curl命令中指定:
| method | option |
| POST | -d或-F |
| HEAD | -I |
|
PUT |
-T |
curl [option] [url]
常见选项:
1 -A/--user-agent <string> 设置用户代理发送给服务器 2 -b/--cookie <name=string/file> cookie字符串或文件读取位置 3 -c/--cookie-jar <file> 操作结束后把cookie写入到这个文件中 4 -C/--continue-at <offset> 断点续转 5 -D/--dump-header <file> 把header信息写入到该文件中 6 -e/--referer 来源网址 7 -f/--fail 连接失败时不显示http错误 8 -o/--output 把输出写到该文件中 9 -O/--remote-name 把输出写到该文件中,保留远程文件的文件名 10 -r/--range <range> 检索来自HTTP/1.1或FTP服务器字节范围 11 -s/--silent 静音模式。不输出任何东西 12 -T/--upload-file <file> 上传文件 13 -u/--user <user[:password]> 设置服务器的用户和密码 14 -w/--write-out [format] 什么输出完成后 15 -x/--proxy <host[:port]> 在给定的端口上使用HTTP代理 16 -#/--progress-bar 进度条显示当前的传送状态
curl支持的协议:
1 cURL支持的通信协议有: 2 FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSP。 3 4 curl还支持SSL认证、HTTP POST、HTTP PUT、FTP上传, 5 6 HTTP form based upload、proxies、HTTP/2、cookies、用户名+密码认证(Basic, Plain, Digest, CRAM-MD5, NTLM, 7 8 Negotiate and Kerberos)、file transfer resume、proxy tunneling。