curl是非常实用的命令行工具,用来与服务器之间传输数据。它的命令行参数多达几十种。
在Linux环境中使用curl命令可以进行接口测试。利用curl对http协议发送Get/Post/Delete/Put请求,同时还可以携带header来满足接口的特定需求。
curl命令的语法
curl[options] [URL…]
curl命令的常用参数
-X/–request [GET|POST|PUT|DELETE|…] 使用指定的http method发出 http request
-H/–header 设定request里的header
-i/–include 显示response的header
-d/–data 设定 http parameters
-v/–verbose 输出比较多的信息
-u/–user 使用者账号
-b/–cookie 使用cookie
-k/–insecure 允许忽略证书进行 SSL 连接
注:
1.更多参数可在Linux中执行“man curl”命令查看
2.也可以查看链接https://curl.se/docs/manpage.html
curl命令常用案例
一个简单的get请求(不带参数,只显示网页信息)
#curl http://www.baidu.com
“-i” 显示页面内容和头部信息
#curl -i http://www.baidu.com
“-I"或”–head" 只显示请求头部信息
#curl -I http://www.baidu.com
#curl --head http://www.baidu.com
“-v"或”–verbose" 显示http请求的通信过程
#curl -v http://www.baidu.com
“-e"或”–refer" 指定来源地址为www.iruance.com
#curl -e “www.iruance.com” http://www.baidu.com -v
“-k"或”–insecure" 允许忽略证书访问
#curl -k https://www.iruance.com
“-b” 发送cookie,从服务器响应set-cookie得到值返回给服务器
#curl -b “domain=.53kf.com” http://www.iruance.com
“-X"或”–request" 发送指定请求
#curl -X GET http://www.baidu.com
#curl --request GET http://www.baidu.com
“-H"或”–header" 指定头部信息
#curl -H “User-Agent:Mozilla/5.0” http://www.baidu.com
“-d” 指定发送的请求参数(提交用户名、密码登录网页)
#curl -d ‘userName=tuanzi’ -d ‘password=123456’ -X POST http://127.92.243.142:30000/user/login
在使用-d情况下,默认为发送post请求,可以省略不写-X POST
#curl -d ‘userName=tuanzi’ -d ‘password=123456’ http://127.92.243.142:30000/user/login
“-A"或”–user-agent" 设置用户代理
#curl --User-Agent ‘Mozilla/5.0’ http://www.baidu.com
虽然curl命令的参数非常多,但常用就那么几个,多操作就容易记住了。一般在进行接口调试的时候,在服务器上进行curl命令操作,会比在工具上方便得多。