cURL 是一个利用 URL 语法在命令行下工作的文件传输工具,1997 年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。

cURL 支持的通信协议有 FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP 和 RTSP。

GET

// 类似于ping 命令;ping 使用imcp协议,curl 使用基于 tcp 的 http 协议
curl  baidu.com
  • cURL 默认发送 GET 请求

POST

  • curl -X -POST URL
  • curl -XPOST URL
  • curl-XPOST URL -d 数据,例如:
curl -XPOST https://jsonplaceholder.typicode.com/posts -d '{"title":"蛋蛋老师"}'

PUT

curl -XPUT https:/jsonplaceholder.typicode.com/posts/1 -d '{“update":"更新视频"}'

DELETE

curl -XDELETE https://jsonplaceholder.typicode.com/posts/1

curl URL -H 首部

curl -XPOST https://jsonplaceholder.typicode.com/posts -H 'Content-Type:application/json' -d '{"titte","技术蛋老师"}'

多个首部

curl -XPOST https://jsonplaceholder.typicode.com/posts -H 'Content-Type:application/json' -H 'A-cc-dept:ap-ation/json' -d '{"titte,技术蛋老师"}'

获取响应首部

curl -I https://jsonplaceholder.typicode.com/posts

下载文件

curl -O https://i0.hdslb.com/bfs/archive/ca375eb31fa90b8e23b88ed3433c2f60de1c2e6e.png
curl -o bb.png https://i0.hdslb.com/bfs/archive/ca375eb31fa90b8e23b88ed3433c2f60de1c2e6e.png

限速下载文件

curl --limit-rate 100k -o bb.iso https://releases.ubuntu.com/22.04/ubuntu-22.04-desktop-amd64.iso

FTP

下载

curl -u 用户名:密码 -O ftp:/server/egg.avi

上传

curl -u 用户名:密码 -T 文件 ftp/server

其他

跟随重定向

curl https://www.bilibili.com -L

连接消息信息

curl -v -L https://www.bilibili.com

使用代理

curl --proxy "http://egg:123@127.0.0.1:1234" URL

参考:

https://blog.csdn.net/angle_chen123/article/details/120675472

https://www.bilibili.com/video/BV1n94y1U7Eu