我正在使用 PHP-cURL 语言的 CTM(呼叫跟踪指标)API 构建一个 Web 应用程序。为了使用 API 进行授权,他们使用基本身份验证方法来构造 Base64 编码的授权标头。
用于获取帐户列表的文档。在这里,我在 CURLOPT_HTTPHEADER 中分配基本身份验证时遇到困难。
CURLOPT_HTTPHEADER => array(
'Authorization: {{Basic Auth}}',
'Content-Type: application/json'
),
我尝试像下面这样分配它
$encoded_string = base64_encode('a20374d463f8a02b68fdc3bed8eb8bb4bb5a0c6:16ebe4fe438b2bdf2e80599baec8f7a6bbc4');
// echo $encoded_string;
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.calltrackingmetrics.com/api/v1/accounts',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: {{'.$encoded_string.'}}',
'Content-Type: application/json'
),
));
以上代码显示错误
{"authentication":"failed"}
。
任何人都可以建议我分配基本身份验证的正确方法吗?
取下括号并尝试这个
CURLOPT_HTTPHEADER => array(
'Authorization: Basic '.$encoded_string,
'Content-Type: application/json'
),