php-curl不适用于POST请求

时间:2015-01-05 10:04:03

标签: php http post curl

我想使用curl发送POST请求,但不知道它为什么不起作用。 HTTP请求如下:

输入:POST 网址https://abc.com/server/386594/actions/?do=open HEADERS :授权:基本1234abc

当我使用curl(CLI)发出请求时,它工作正常但在php中我没有得到任何响应。我的代码是:

$headers = array("Authorization: Basic 1234abc");
$ch1 = curl_init();
curl_setopt($ch1, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch1, CURLOPT_URL, "https://abc.com/server/386594/actions/");
curl_setopt($ch1, CURLOPT_POST, 1);
curl_setopt($ch1, CUTLOPT_POSTFIELDS, "do=open");
curl_setopt($ch1, CURLOPT_RETURNTRANSFER, 1);
$vnc = curl_exec($ch1);
echo $vnc;
echo curl_error($ch1);

我哪里错了? :)

1 个答案:

答案 0 :(得分:0)

请输入以下代码....

url不是安全网址,因此请删除HTTPS并编写简单的HTTP。

$headers = array("Authorization:Basic 1234abc");
                            //remove the space
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$host_url);
    curl_setopt($ch, CURLOPT_HEADER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_POST,true);
                                    //remove 1 and put 'true' keyword
    curl_setopt($ch, CURLOPT_POSTFIELDS,"do=open");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 60);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST);
    $curl_response = curl_exec($ch);
相关问题