美文网首页
CURL命令

CURL命令

作者: 逗比的一生 | 来源:发表于2019-11-20 14:05 被阅读0次
  • 上传的option是 -T
    比如我们向ftp传一个文件:curl -T localfile -u name:passwd ftp://upload_site:port/path/
    当然,向http服务器上传文件也可以
    比如 curl -T localfile http://cgi2.tky.3web.ne.jp/~zzh/abc.cgi

  • 注意,这时候,使用的协议是HTTP的PUT method
    http提交一个表单,比较常用的是POST模式和GET模式
    GET模式什么option都不用,只需要把变量写在url里面就可以了
    curl http://www.yahoo.com/login.cgi?user=nickwolfe&password=12345
    而POST模式的option则是 -d
    curl -d "user=nickwolfe&password=12345" http://www.yahoo.com/login.cgi
    就相当于向这个站点发出一次登陆申请

  • POST模式下的文件上的文件上传,比如

<form method="POST" enctype="multipar/form-data" action="http://cgi2.tky.3web.ne.jp/~zzh/up_file.cgi">
<input type=file name=upload>
<input type=submit name=nick value="go">
</form>

这样一个HTTP表单,我们要用curl进行模拟,就该是这样的语法:
curl -F upload=@localfile -F nick=go http://cgi2.tky.3web.ne.jp/~zzh/up_file.cgi

  • https的时候使用本地证书,就可以这样
    curl -E localcert.pem https://remote_server
    还可以用curl通过dict协议去查字典
    curl dict://dict.org/d:computer

  • 用curl命令,post提交带空格的数据,分开传参
    curl -D cookie -d "username=abcdef" -d "password=abc efg" http://login.xxx.com/

  • option: -D 这个是把http的response里面的cookie信息存到一个的文件中去
    url -x 123.45.67.89:1080 -o page.html -D cookie0001.txt http://www.linuxidc.com

  • 下一次访问的时候,如何继续使用上次留下的cookie信息呢?很多网站都是靠监视你的cookie信息,来判断你是不是不按规矩访问他们的网站的。
    使用这个option来把上次的cookie信息追加到http request里面去: -b
    curl -x 123.45.67.89:1080 -o page1.html -D cookie0002.txt -b cookie0001.txt http://www.linuxidc.com

  • curl给我们提供了一个有用的option,可以让我们随意指定自己这次访问所宣称的自己的浏览器信息: -A
    curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -x 123.45.67.89:1080 -o page.html -D cookie0001.txt http://www.linuxidc.com

  • 服务端防盗链,curl提供了设定referer的option: -e
    curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -x 123.45.67.89:1080 -e "mail.linuxidc.com" -o page.html -D cookie0001.txt http://www.linuxidc.com
    这样,就可以骗过服务器,你是从mail.linuxidc.com点击某个链接过来的了。

相关文章

网友评论

      本文标题:CURL命令

      本文链接:https://www.haomeiwen.com/subject/effoictx.html