PHP腾讯云人脸核身 接口对接和签名设置


   	
	
    $secretKey = '你的secretKey';
	$srcStr = 'GETfaceid.tencentcloudapi.com/?';// 文档中示例是POST的 这里改成GET 这里踩个坑- -
	$param = [ 
	    "Action"=> 'DetectAuth',//默认
	    "Nonce"=> rand(1000,9999),
	    "SecretId"=>"你的secretId",
	    'Region'=>'ap-beijing',//区域列表中选
	    "Timestamp"=> time(),
	    'RuleId'=>'0',//自己创建的RuleID
	    "Token"=>'',//为空
	    "Version"=>'2018-03-01'//默认
	    ];  
	ksort($param); //参数排序
	
	//return json($param);
	
	$srcStr .= urldecode(http_build_query($param));
	
	
	//return $srcStr;

 //排序后连接字符串 生成签名 官网有验证签名的地方 签名不对的话 可以把时间戳和随机数写死之后校验
    $sign =  urlencode(base64_encode(hash_hmac('sha1', $srcStr, $secretKey, true)));;
    
   // return $sign;
 $url ='https://faceid.tencentcloudapi.com/?Action=DetectAuth&Nonce='.$param['Nonce'].'&Region=ap-beijing&RuleId=0&SecretId='.$param['SecretId'].'&Signature='.$sign.'&Timestamp='.$param['Timestamp'].'&Token=&Version=2018-03-01';

   
    $ch = curl_init();
		curl_setopt($ch, CURLOPT_URL, $url);
		curl_setopt($ch, CURLOPT_HEADER, false);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		
		curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.1 Safari/537.11');
		//curl_setopt($ch, CURLOPT_POST, 1);
		$res = curl_exec($ch);
		
		
		$rescode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
		curl_close($ch);
    	$result = json_decode($res,true);
		return $res;
	

发布了9 篇原创文章 · 获赞 4 · 访问量 4791
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览