curl命令

curl请求

post,header(host),url

curl --data "haha=haha&h=h" -H "Host: lww.storage.hd.open.360.cn" "http://10.16.15.115/data/save?iot_id=iot_id"

其中,--data是post数据,-H是header头,最后是要请求的url

输出到文件

输出到指定文件中: curl -o mygettext.html http://www.gnu.org/software/gettext/manual/gettext.html

输出文件名默认为url后缀:curl -O http://www.gnu.org/software/gettext/manual/gettext.html

更多需求

header头中加cookie

post数据会比较复杂,包含特殊字符

其中cookie有解决方案,不过需要把cookie先保存到文件中,如何把cookie文件作为header头倒是个比较有意思的事情。

提交多个header(包括cookie,host等):curl -H "Host:lww.bbs.test.com" -H "Content-type:application/x-www-form-urlencoded" -H "Cookie:a=a;b=b" --data "b=b%20" "http://10.16.15.115/t.php?a=+%20aaa"

特别地,对+号的参数,php默认会做urldecode,会解析成空格" ",所以提交特殊符号时需要将值做urlencode再提交才会符合预期。

注意:这个加host的指令是有顺序的,header头中是真实的域名(比如host:www.test.com),实际url是IP地址(http://10.10.10.10/a.php)。

更多用法

更多用法可以见参考文档。

比如,把cookie信息保存到文件中

比如,下载多个网页文件(html或者图片)

比如,如何传递带特殊字符的post数据

比如,如何限制网络速度,来模拟网络慢的时候,业务访问情况

参考资料:

http://www.cnblogs.com/gbyukg/p/3326825.html

原文地址:https://www.cnblogs.com/helww/p/4237771.html