CRUL命令及参数浅析/CRUL用法教程
2025/4/2 14:30:28
关键词:CURL教程 CRUL命令 CURL用法
2025/4/2 14:30:28
关键词:CURL教程 CRUL命令 CURL用法
curl是一种命令行工具,作用是发出网络请求,得到数据,支持多种协议,下面举例说明。
一、查看网页源码
直接在curl命令后加上网址,就可查看网页源码。
$ curl www.sina.com
要把这个网页保存下来,可以使用-o参数,相当于使用wget命令。
$ curl -o [文件名] www.sina.com
-k参数指定跳过 SSL 检测
$ curl -k https://www.example.com
上面命令不会检查服务器的 SSL 证书是否正确
二、自动跳转
$ curl -L www.sina.com
键入上面的命令,结果就自动跳转为www.sina.com.cn。
三、显示头信息
-i参数可以显示Content-Type\Server等http response的头信息。
$ curl -i www.sina.com
-I参数则是只显示http response的头信息。
四、显示通信过程
-v参数可列出http通信个过程,包括端口连接和头信息。
curl -v www.sina.com
下面的命令可以查看更详细的通信过程。
curl --trace output.txt www.sina.com
curl --trace-ascii output.txt www.sina.com
运行后,请打开output.txt文件查看。
五、发送表单信息
发送表单信息有GET和POST两种方法。GET方法简单,参数附网址后即可。
curl http://example.com/form.cgi?data=xxx
curl -H "Content-Type:application/json" -X POST -d '{"k1":"34", "K2":"rf"}' http://e.co/a
POST方法必须把数据和网址分开,curl就要用到--data参数。
curl -X POST --data "data=xxx" example.com/form.cgi
如数据没有经过表单编码,还可让curl编码,参数--data-urlencode
curl -X POST--data-urlencode "date=April 1" example.com/form.cgi
也可这样
curl -d 'login=emma&password=123'-X POST https://google.com/login
curl -d 'login=emma' -d 'password=123' -X POST https://google.com/login
六、HTTP动词
curl默认的HTTP动词是GET,使用`-X`参数可以支持其他动词。
curl -X POST www.example.com
curl -X DELETE www.example.com
七、文件上传
假定文件上传的表单是下面这样:
你可以用curl这样上传文件:
curl --form upload=@localfilename --form press=OK [URL]
八、Referer字段
在http request头信息中,提供一个referer字段,表示你是从哪里跳转过来的:
$ curl --referer http://www.example.com http://www.example.com
九、User Agent字段
模拟客户端的设备信息,比如手机版和浏览器。如模拟iPhone:
curl --user-agent "Mozilla/5.0 (iPhone; U; CPU iPhone OS 12_0...)" URL
也可以通过-H参数直接指定标头,更改User-Agent
curl -H 'User-Agent: php/1.0' https://google.com
$ curl -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)...' https://google.com
十、cookie
让curl发送cookie。
$ curl --cookie "name=xxx" www.example.com
具体的cookie值,可从http response头信息的Set-Cookie字段得到。
-c cookie-file可保存服务器返回的cookie到文件,-b cookie-file可使用此文件作为cookie信息进行后续请求。
curl -c cookies http://example.com
curl -b cookies http://example.com
十一、增加头信息
要在http request之中,自行增加一个头信息。`--header`参数就可以起到这个作用。
curl --header "Content-Type:application/json" http://example.com
十二、HTTP认证
有些网域需要HTTP认证,这时curl需要用到`--user`参数。
curl --user name:password example.com
十三、上传文件
-F参数用来向服务器上传二进制文件。
curl -F 'file=@1.png' https://google.com/profile
此令设定标头Content-Type:multipart/form-data,将文件1.png作为file字段上传。
-F参数可以指定 MIME 类型
curl -F 'file=@photo.png;type=image/png' https://google.com/profile
此令指定MIME类型为image/png,否则默认类型为application/octet-stream
-F参数也可以指定文件名
curl -F 'file=@photo.png;filename=me.png' https://google.com/profile [1] [2]
相关文章(向右看)..
一、查看网页源码
直接在curl命令后加上网址,就可查看网页源码。
$ curl www.sina.com
要把这个网页保存下来,可以使用-o参数,相当于使用wget命令。
$ curl -o [文件名] www.sina.com
-k参数指定跳过 SSL 检测
$ curl -k https://www.example.com
上面命令不会检查服务器的 SSL 证书是否正确
二、自动跳转
$ curl -L www.sina.com
键入上面的命令,结果就自动跳转为www.sina.com.cn。
三、显示头信息
-i参数可以显示Content-Type\Server等http response的头信息。
$ curl -i www.sina.com
-I参数则是只显示http response的头信息。
四、显示通信过程
-v参数可列出http通信个过程,包括端口连接和头信息。
curl -v www.sina.com
下面的命令可以查看更详细的通信过程。
curl --trace output.txt www.sina.com
curl --trace-ascii output.txt www.sina.com
运行后,请打开output.txt文件查看。
五、发送表单信息
发送表单信息有GET和POST两种方法。GET方法简单,参数附网址后即可。
curl http://example.com/form.cgi?data=xxx
curl -H "Content-Type:application/json" -X POST -d '{"k1":"34", "K2":"rf"}' http://e.co/a
POST方法必须把数据和网址分开,curl就要用到--data参数。
curl -X POST --data "data=xxx" example.com/form.cgi
如数据没有经过表单编码,还可让curl编码,参数--data-urlencode
curl -X POST--data-urlencode "date=April 1" example.com/form.cgi
也可这样
curl -d 'login=emma&password=123'-X POST https://google.com/login
curl -d 'login=emma' -d 'password=123' -X POST https://google.com/login
六、HTTP动词
curl默认的HTTP动词是GET,使用`-X`参数可以支持其他动词。
curl -X POST www.example.com
curl -X DELETE www.example.com
七、文件上传
假定文件上传的表单是下面这样:
你可以用curl这样上传文件:
curl --form upload=@localfilename --form press=OK [URL]
八、Referer字段
在http request头信息中,提供一个referer字段,表示你是从哪里跳转过来的:
$ curl --referer http://www.example.com http://www.example.com
九、User Agent字段
模拟客户端的设备信息,比如手机版和浏览器。如模拟iPhone:
curl --user-agent "Mozilla/5.0 (iPhone; U; CPU iPhone OS 12_0...)" URL
也可以通过-H参数直接指定标头,更改User-Agent
curl -H 'User-Agent: php/1.0' https://google.com
$ curl -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)...' https://google.com
十、cookie
让curl发送cookie。
$ curl --cookie "name=xxx" www.example.com
具体的cookie值,可从http response头信息的Set-Cookie字段得到。
-c cookie-file可保存服务器返回的cookie到文件,-b cookie-file可使用此文件作为cookie信息进行后续请求。
curl -c cookies http://example.com
curl -b cookies http://example.com
十一、增加头信息
要在http request之中,自行增加一个头信息。`--header`参数就可以起到这个作用。
curl --header "Content-Type:application/json" http://example.com
十二、HTTP认证
有些网域需要HTTP认证,这时curl需要用到`--user`参数。
curl --user name:password example.com
十三、上传文件
-F参数用来向服务器上传二进制文件。
curl -F 'file=@1.png' https://google.com/profile
此令设定标头Content-Type:multipart/form-data,将文件1.png作为file字段上传。
-F参数可以指定 MIME 类型
curl -F 'file=@photo.png;type=image/png' https://google.com/profile
此令指定MIME类型为image/png,否则默认类型为application/octet-stream
-F参数也可以指定文件名
curl -F 'file=@photo.png;filename=me.png' https://google.com/profile
相关文章(向右看)..