HTTP协议
刚才说到PUT,嘿嘿,自然让老服想起来了其他几种methos还没讲呢!
GET和POST都不能忘哦。
http提交一个表单,比较常用的是POST模式和GET模式
GET模式什么option都不用,只需要把变量写在url里面就可以了
比如:
1
|
curl http:
//www
.yahoo.com
/login
.cgi?user=nickwolfe&password=12345
|
而POST模式的option则是 -d
比如:
1
|
curl -d
"user=nickwolfe&password=12345"
http:
//www
.yahoo.com
/login
.cgi
|
就相当于向这个站点发出一次登陆申请~~~~~
到底该用GET模式还是POST模式,要看对面服务器的程序设定。
一点需要注意的是,POST模式下的文件上的文件上传,比如
1
2
3
4
|
<
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进行模拟,就该是这样的语法:
1
|
curl -F upload=@localfile -F nick=go http:
//cgi2
.tky.3web.
ne
.jp/~zzh
/up_file
.cgi
|
罗罗嗦嗦讲了这么多,其实curl还有很多很多技巧和用法
比如 https的时候使用本地证书,就可以这样
1
|
curl -E localcert.pem https:
//remote_server
|
再比如,你还可以用curl通过dict协议去查字典~~~~~
1
|
curl dict:
//dict
.org
/d
:computer
|