如何在PHP代码中使用cURL调用中的标记(-u)进行身份验证?

时间:2015-11-11 17:12:00

标签: php authentication curl libcurl php-curl

我在我的cmd中有这个调用,它返回相应的响应:

curl https://my-hostname-path/v -u {api_key}

而不是{api_key}我发送了与我的帐户关联的令牌,例如:value_of_my_api_key

现在我想使用curl_setopt命令在php中进行调用。我有这个代码:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://my-hostname-path/v");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, "api_key:value_of_my_api_key");
$out = curl_exec($ch);

print "error: " . curl_error($ch) . "<br /><br />";
print "output: " . $out . "<br /><br />";

curl_close($ch);

并收到错误:

  

错误:SSL证书问题:无法获得本地颁发者证书

那么替换curl_setopt的{​​{1}}命令以及如何在php代码中实现它是什么?

1 个答案:

答案 0 :(得分:0)

我没有看到CURL调用本身有任何问题。我敢打赌,您的服务器没有正确的CA证书来验证SSL。您可以将CA存储在服务器上,并使用CURLOPT_CAINFO选项对其进行验证。

如果您不关心验证SSL证书,可以随时添加

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);