curl 命令使用介绍
说明
curl
命令是一个利用URL规则在命令行下工作的文件传输工具。它支持
- 文件的上传和下载
- HTTP、HTTPS、ftp等众多协议
- POST
- cookies
- 认证
- 用户代理字符串
- 限速
- 文件大小
- 进度条
使用
GET 请求
curl protocol://address:port/url?args
POST 请求
curl -d "args" protocol://address:port/url
curl -H "Content-Type:application/json" -X POST -d 'json data' protocol://address:port/url
变量
HEADERS=(-H "X-API-KEY: $API_KEY" -H "Content-Type: application/json")
curl -v "${HEADERS[@]}" -X GET https://api.xiexianbin.cn/xxx
示例
假设目标url
为:127.0.0.1:8080/login
GET
curl http://127.0.0.1:8080/login?<user>&passwd=<password>
POST
curl -d "user=<user>&passwd=<password>" http://127.0.0.1:8080/login
curl -H "Content-Type:application/json" -X POST -d '{"user": "<user>", "passwd":"<password>"}' http://127.0.0.1:8000/login
指定DNS解析
将xiexianbin.cn
解析到127.0.0.1
(特别注意,由于3000
不是默认端口号,需要特别指定)
curl -vX PURGE --resolve xiexianbin.cn:3000:127.0.0.1 http://xiexianbin.cn:3000/resource.xxx
指定代理
采用HTTP
协议访问xiexianbin.cn
,采用127.0.0.1:3000
代理请求
curl -x127.0.0.1:3000 http://xiexianbin.cn/resource.xxx
指定网卡
curl --interface ens38 https://xiexianbin.cn/