- curl :command line tool and library for transferring data with URLs
- curl 命令,常用缩写:
curl –request COMMAND |
curl -X COMMAND |
--request 用-X 代替 |
curl –header LINE |
curl -H LINE |
--header 用-H 代替 |
curl –data DATA |
curl -d DATA |
--data 用-d 代替 |
- curl 常用命令(GET、POST、PUT、DELETE等需要大写):
curl [url] |
查看网页源码 |
curl -o [文件名] [url] |
保存网页 |
curl -L [url] |
自动跳转网址 |
curl -i [url] |
-i 参数可以显示http response的头信息,连同网页代码一起。 |
curl -I [url] |
-I 参数则是只显示http response的头信息。 |
curl -v [url] |
-v 参数可以显示一次http通信的整个过程,包括端口连接和http request头信息。 |
curl –trace [文件名] [url] |
把信息输出到文件 |
curl –trace-ascii [文件名] [url] |
把信息输出到文件 |
curl example.com/form.cgi?data=xxx |
get方式发送表单 |
curl -X POST –data “data=xxx” example.com/form.cgi |
post方式发送表单 |
curl -X POST–data-urlencode “date=April 1” example.com/form.cgi |
数据没有经过表单编码,还可以让curl为你编码,参数是--data-urlencode |
curl -X DELETE www.example.com |
curl默认的HTTP动词是GET,使用-X 参数可以支持其他动词 |
curl –form upload=@localfilename –form press=OK [URL] |
上传文件 |
curl –referer http://www.example.com http://www.example.com |
在http request头信息中,提供一个referer字段,表示你是从哪里跳转过来的 |
curl –user-agent “[User Agent]” [URL] |
发送User Agent |
curl –cookie “name=xxx” www.example.com |
发送cookie |
curl -c [文件名] http://example.com |
-c cookie-file 可以保存服务器返回的cookie到文件 |
curl -b [文件名] http://example.com |
-b cookie-file 可以使用这个文件作为cookie信息,进行后续的请求 |
curl –header “Content-Type:application/json” http://example.com |
在http request之中,自行增加一个头信息 |
curl –user name:password example.com |
有些网域需要HTTP认证,这时curl需要用到--user 参数。 |
<form method="POST" enctype='multipart/form-data' action="upload.cgi">
<input type=file name=upload>
<input type=submit name=press value="OK">
</form>
你可以用curl这样上传文件:
$ curl --form upload=@localfilename --form press=OK [URL]