如何在 PHP 代码的 cURL 调用中使用令牌 (-u) 进行身份验证?
How to authenticate with token (-u) in cURL call in PHP code?
我在我的 cmd 中有这个调用 returns 相应的响应:
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);
并得到错误:
error: SSL certificate problem: unable to get local issuer certificate
那么替换-u
的curl_setopt
命令是什么,如何在php代码中实现呢?
我没有发现 CURL 调用本身有任何问题。我敢打赌,您的服务器没有正确的 CA 证书来验证 SSL。您可以将 CA 存储在您的服务器上并使用 CURLOPT_CAINFO
选项来验证它。
如果您不关心验证 SSL 证书,您可以随时添加
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
我在我的 cmd 中有这个调用 returns 相应的响应:
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);
并得到错误:
error: SSL certificate problem: unable to get local issuer certificate
那么替换-u
的curl_setopt
命令是什么,如何在php代码中实现呢?
我没有发现 CURL 调用本身有任何问题。我敢打赌,您的服务器没有正确的 CA 证书来验证 SSL。您可以将 CA 存储在您的服务器上并使用 CURLOPT_CAINFO
选项来验证它。
如果您不关心验证 SSL 证书,您可以随时添加
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);