出现的问题:{"Response":{"Error":{"Code":"AuthFailure.SignatureFailure","Message":"The provided credentials could not be validated. Please check your signature is correct."},"RequestId":"55d34095-ec31-4653-8567-7f949b769206"}}
代码如下:
<?php
$secretID="0000000";
$secretKey="1111111111";
$param['Action']="DetectFace";
$param['Version']='2018-03-01';
$param['Nonce']=rand();
$param['Timestamp']=time();
$param["Region"]="ap-guangzhou";
$param["SecretId"]=$secretID;
$img = 'E:/softwaredownload/phpstudy/WWW/magicmirror/img/me.jpg';
$imgstr = base64_encode($img);
$param['Image']=$imgstr;
ksort($param);
$signStr="GETiai.tencentcloudapi.com/?";
foreach($param as $key => $value){
$signStr = $signStr . $key . "=" . $value . "&";
}
$signStr = substr($signStr,0,-1);
$signature = urlencode(base64_encode(hash_hmac("sha1",$signStr,$secretKey,true)));
$param['Signature'] = $signature;
ksort($param);
$signStr="https://iai.tencentcloudapi.com/?";
foreach($param as $key => $value){
$signStr = $signStr . $key . "=" . $value . "&";
}
$signStr = substr($signStr,0,-1);
echo $signStr;
$weather=curl_init();
curl_setopt($weather,CURLOPT_URL,$signStr);
curl_setopt($weather,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($weather,CURLOPT_RETURNTRANSFER,1);
curl_setopt($weather,CURLOPT_HTTPHEADER,array(
'Content-Type:application/x-www-form-urlencoded',
'Host: iai.tencentcloudapi.com'
)
);
$data = curl_exec($weather);
echo $data;
?>
相似问题