我正在嘗試使用HTTP基本認證從API中獲取數據。對HTTP的HTTP請求受到HTTP基本身份驗證的保護。 HTTP基本認證由一個令牌和祕密組成。使用PHP的HTTP基本認證cURL
我已經嘗試了許多不同的技術,但不斷收到未提供身份驗證的響應。我不確定令牌:祕密方法是否與用戶名:密碼不同,但我無法獲得此身份驗證。
stdClass的物體(未提供 [ERROR_MESSAGE] =>認證 。)
這裏是API文檔 - https://www.whatconverts.com/api/
<?php
$token = "xxx";
$secret = "yyy";
$response = get_web_page("https://leads.seekmomentum.com/api/v1/leads");
$resArr = array();
$resArr = json_decode($response);
echo "<pre>"; print_r($resArr); echo "</pre>";
function get_web_page($url) {
$options = array(
CURLOPT_RETURNTRANSFER => true, // return web page
CURLOPT_HEADER => false, // don't return headers
CURLOPT_FOLLOWLOCATION => true, // follow redirects
CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
CURLOPT_ENCODING => "", // handle compressed
CURLOPT_USERAGENT => "test", // name of client
CURLOPT_AUTOREFERER => true, // set referrer on redirect
CURLOPT_CONNECTTIMEOUT => 120, // time-out on connect
CURLOPT_TIMEOUT => 120, // time-out on response
CURLOPT_HTTPAUTH => "CURLAUTH_BASIC", // authentication method
CURLOPT_USERPWD => "$token:$secret", // authentication
);
$ch = curl_init($url);
curl_setopt_array($ch, $options);
$content = curl_exec($ch);
curl_close($ch);
return $content;
}
?>
您是否嘗試過單獨使用CURLOPT_USERNAME和CURLOPT_PASSWORD? –
感謝您的憑據......可能希望立即讓這些更改/失效。 –
刪除'CURLAUTH_BASIC'周圍的引號 - 這是一個常數,而不是一個值。 – iainn