1 cURL简介

cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。

2eab26a841bffc6cb9b0bd6b64280ce5.png

cURL支持的通信协议有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSP。

curl还支持SSL认证、HTTP POST、HTTP PUT、FTP上传, HTTP form based upload、proxies、HTTP/2、cookies、用户名+密码认证(Basic, Plain, Digest, CRAM-MD5, NTLM, Negotiate and Kerberos)、file transfer resume、proxy tunneling。

linux和window10可以直接使用curl,window10 以下可以到https://curl.haxx.se/windows/ 下载安装

2 linux centos下请求

6a80cf28fa4cbcd3ce001fd74501a67f.png

3 window10 cmd下请求

3b3fe64686079c249952bcd23ed532c6.png

注意,默认情况下cmd的字符集为gbk,如果上述命令乱码,请调整为utf-8:

1、打开CMD.exe命令行窗口

2、通过 chcp命令改变代码页,UTF-8的代码页为65001

chcp 65001

执行该操作后,代码页就被变成UTF-8了。但是,在窗口中仍旧不能正确显示UTF-8字符。

3、修改窗口属性,改变字体

在命令行标题栏上点击右键,选择"属性"->"字体",将字体修改为True Type字体"Lucida Console",然后点击确定将属性应用到当前窗口。

4. curl命令使用(以linux为例)

抓取网页

curl http://www.baidu.com 

curl使用http代理抓取页面

curl -x 111.95.243.36:80 http://www.baidu.com 

使用socks代理抓取页面:

curl --socks5 202.113.65.229:443 http://www.baidu.com 

接收cookies:

curl -c /tmp/cookies http://www.baidu.com #cookies保存到/tmp/cookies文件
836ebc0107260d1bfeba2186a0205447.png

发送cookies

curl -b "key1=val1;key2=val2;" http://www.baidu.com #发送cookies文本curl -b /tmp/cookies http://www.baidu.com #从文件中读取cookies

返回完整http报文

curl -v "http://localhost:8080/xxxxxx/alive.jsp" 返回完整的报文:
0368f2361eee92b178038f6517e12e26.png

curl post方式提交数据

curl -d "name=value&name2=value2" http://www.baidu.com #post数据curl -d a=b&c=d&txt@/tmp/txt http://www.baidu.com #post文件

curl请求模拟post发送json

curl -X POST --header "Content-Type:application/json" --data '{"name":"sss
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐