Win7系统下安装使用curl命令的方法
Curl是利用URL语法在命令行方式下工作的开源文件传输工具,支持很多协议,然而有很多用户却不知道要怎么安装使用curl命令,现在给大家详细介绍一下Win7系统下安装使用curl命令的方法吧。
1、进入http://curlhaxxse/download/C=M;O=D网站;
2、根据自己的操作系统位数和是否需要SSL下载相应的版本。这里下载curl-7330-win64-ssl-sspizip,下载完成之后解压到需要使用curl命令的目录。这里为了方便我先直接解压到当前目录;
3、为了测试curl命令,我已经发布了一个带应用的本地服务器,并且可以在浏览器中访问;
4、打开命令窗口并定位到curl命令所在的目录,你可以使用cd命令也可以像下图这样快速进入;
5、测试curl命令;
6、当然,可以给Windows增加curl命令的环境变量,增加CURL_HOME环境变量,给PATH环境变量加上%CURL_HOME%;
这样就可以在命令窗口的任意目录下使用curl命令了。
给你一个思路,使用http代替https,然后抓包,看一下http请求到底有什么不同
另外,CURLOPT_SSL_VERIFYHOST官方文档有说明:
禁用后cURL将终止从服务端进行验证。使用CURLOPT_CAINFO选项设置证书使用CURLOPT_CAPATH选项设置证书目录
如果CURLOPT_SSL_VERIFYPEER(默认值为2)被启用,CURLOPT_SSL_VERIFYHOST需要被设置成TRUE否则设置为
FALSE。
所以首先你的CURLOPT_SSL_VERIFYPEER是设置为false的,所以CURLOPT_SSL_VERIFYHOST也要为false
还有, 我看请求认证并不是使用http auth, 你为什么添加curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
最后,官方文档对于CURLOPT_POSTFIELDS的解释
如果value是一个数组,Content-Type头将会被设置成multipart/form-data
而接口文档中明确说明
请求接口(建议使用post请求,注意不要使用multipart-post):
所以你可以尝试
curl_setopt($ch,CURLOPT_POSTFIELDS, http_build_query($data));
最后的最后,试试下面的代码:
<php
header('Content-Type:text/html;charset=utf-8');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://sendcloudsohucom/webapi/listcreatejson');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = array(
'api_user' => '',
'api_key' => '',
'address' => 'runnerlee@maillistsendcloudorg',
'name' => 'Abao新建的测试邮件列表',
'description' => '这是Abao新建的测试邮件列表',
);
curl_setopt($ch,CURLOPT_POSTFIELDS, http_build_query($data));
if(false === $result=curl_exec($ch)) {
echo 'false:<br />';
}
var_dump(json_decode($result,true));
curl_close($ch);
0条评论