可以用于调试,还会输出原始的二进制数据。
curl --trace - https://www.baidu.com
指定 HTTP 请求的代理。
指定 HTTP 请求通过myproxy.com:8080的 socks5 代理发出。
curl -x socks5://james:[email protected]:8080 https://www.baidu.com
使用php curl获取页面内容或提交数据, 有时候希望返回的内容作为变量储存, 而不是直接输出.
方法:设置curl的CURLOPT_RETURNTRANSFER选项为1或true.
$url = 'http://www.baidu.com';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
// 不要http header 加快效率
curl_setopt($curl, CURLOPT_HEADER, 0);
// https请求 不验证证书和hosts
curl_setopt($ch, CURLOPT_SSL_VER
问题:终端使用curl请求url时返回为空可能是网站反爬机制限制为windows 或mac端才能进行数据获取。
解法:可通过设置头文件解决。
curl -a aa.html “https://www.ip138.com/iplookup.asp?ip=58.217.246.123&action=2” -H ‘User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Geck
Linux(centos)下的curl工具是一个功能强大、用于与服务器之间传输数据的命令行工具。支持许多常见协议,如HTTP/HTTPS/FTP等。curl命令在开发、测试和日常使用中广泛使用,它可以帮助用户检查服务器的响应、上传或下载数据,以及进行各种网络相关的操作。curl 的选项非常丰富,可以根据不同的需求进行组合使用。此外,curl 还支持自定义请求头、处理 JSON、XML 等数据格式,以及通过脚本进行更复杂的操作。进行网络开发、测试,还是进行日常的网络操作,curl都能提供极大的便利和灵活性。
curl 是常用的命令行工具,用来请求 Web服务器。它的名字就是客户端(client)的 URL 工具的意思。
它的功能非常强大,命令行参数多达几十种。如果熟练的话,完全可以取代 Postman 这一类的图形界面工具。
不带有任何参数时,curl 就是发出 GET 请求。
$ curl https://www.example.com
上面命令向www.example.com发出 GET 请求,服务器返回的内容会在命令行输出。
-A参数指定客户端的用户代理标头,即Use
【问题】输入curl xxx.xxx.xxx.xxx:dddd/service 按下回车后无任何返回值
【解决】在命令的最后加上/,如上述命令改为:curl xxx.xxx.xxx.xxx:dddd/service/ 后成功返回html
curl无输出返回空白或者null问题解决
如果发现标题类似问题,很有可能是因为ssl证书问题导致只需要在curl方法中加入以下代码即可:
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//禁止 cURL 验证对等证书
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);//是否检测服务器的域名与证书上的是否一致
赠送个比较全的curl代码
* CURL请求函数:支持POST及基本header头信息
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Tue, 01 Dec 2020 08:01:30 GMT
Connection: close
仔细一看发现返回但格式是gzip
所以要想显示请求体就要加上"–compressed"参数
curl -X POST -H 'Authorization:{{token}}' -H 'Content-Type: application/json' -d '{"name": "vipTest1","vpcId": "1546774307671072768","subnetId": "96e6148f-486b-41ce-8694-16f249002d96","fixedIp": "192.168.10.222"}' localhost:8080/vpc/v1/vips