您的位置:首页 > 其它

curl笔记

2016-04-14 00:00 330 查看
摘要: 本文列举一些日常较为常用的使用办法。

curl是一个命令行工具,对于web开发者来说,这工具是非常有用的。

下面针对一些比较常用的场景,举例说明一下curl的使用。更多的使用方式,请自行阅读文档。

入门级命令

curl www.baidu.com
当增加参数-o(小写字母)时,相当于wget命令。
curl -o baidu.html www.baidu.com

请求头部信息

小写字母i会显示包括Http头部信息和Body信息。
curl -i www.baidu.com
大写字母I只会显示Http头部信息。
curl -I www.baidu.com

举例:利用头部请求检测服务是否正常启动。

if curl -s -I --connect-timeout 5 --max-time 20 --retry-max-time 5 --retry-delay 1 http://127.0.0.1:8082/hello.do | grep -q '200 OK';
then
echo "Tomcat maybe OK"
else
echo "Tomcat maybe FAULT"
fi

模拟Http请求

get请求,只需要在url后面直接带参数
curl http://www.baidu.com?a=1&b=2 默认是使用GET的方法请求,也可以使用-X参数指定HTTP方法。使用-d指定POST的参数。
curl -X POST -d 'a=1&b=2' http://www.baidu.com 当POST的参数是需要进行编码时,可以使用--data-urlencode代替-d
curl -X POST --data-urlencode 'a=1 &b=2' http://www.baidu.com[/code] 模拟带UserAgent的请求,在处理在些防钓鱼的接口情况比较常用。

curl --user-agent 'Mozilla/5.0 (X11; U; Linux i686; zh-CN; rv:1.9.1.2) Gecko/20090803 Fedora/3.5.2-2.fc11 Firefox/3.5.2' www.baidu.com

模拟ContentType的请求

curl -H 'application/x-www-form-urlencoded;charset=GB2312' www.baidu.com

模拟带Refferer的请求。在处理在些防钓鱼的接口情况比较常用。

curl --referer 'www.163.com' 'www.baidu.com'

带Cookie的请求

curl --cookie 'a=1;b=2' www.baidu.com

忽略https证书

#通常报错curl: (51) SSL: certificate subject name
curl -k 'https://www.baidu.com'

显示Http通讯详情。可以用于分析请求。

curl -v www.baidu.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: