PHP腾讯云人脸核身获取SIGN Ticket

参考腾讯云官方文档:人脸核身 获取 SIGN ticket_腾讯云

前提条件:已经获取了access_token。获取方法可参考:

PHP腾讯云人脸核身获取Access Token-CSDN博客

php 复制代码
public function getSignTicket(){
        

    $access_token = file_get_contents('/data/config/tx_face_accesstoken.txt');

    if(!$access_token){
        return;
    }

    $data = [
        'appId' => '', //WBappid,https://cloud.tencent.com/document/product/1007/49634
        'access_token' => $access_token,
	    'type' => 'SIGN', 
        'version' => '1.0.0'
    ];

    $str = http_build_query($data);
    $url = 'https://kyc1.qcloud.com/api/oauth2/api_ticket?'.$str;
        
    $result = $this->cmf_curl_get($url);

    $arr = json_decode($result,true);

    if($arr['code'] == 0){
        $ticket = $arr['tickets'][0]['value'];
        //写入磁盘
        file_put_contents('/data/config/tx_face_signticket.txt',$ticket);
    }
}

function cmf_curl_get($url){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_FAILONERROR, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_AUTOREFERER, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 5);
    $SSL = substr($url, 0, 8) == "https://" ? true : false;
    if ($SSL) {
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 信任任何证书
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); // 检查证书中是否设置域名
    }
    $content = curl_exec($ch);
    curl_close($ch);
    return $content;
}
相关推荐
Source.Liu3 小时前
【沟通协作软件】腾讯云域名DDNS搭建Matrix家庭服务器 - 完整操作笔记
服务器·腾讯云
铁蛋AI编程实战3 小时前
ClawdBot(Moltbot)腾讯云一键部署教程(新手零失败)
云计算·腾讯云
G31135422731 天前
如何选择适合项目的云服务器配置?
腾讯云
李白你好1 天前
基于腾讯云函数 (SCF) 的分布式 IP 代理池.
分布式·tcp/ip·腾讯云
清静诗意3 天前
使用 Certbot 在腾讯云生成 Let’s Encrypt 通配符证书完整教程
腾讯云·ssl证书
Front_Yue3 天前
Spring Boot 实战:腾讯云 COS 高级特性——断点续传与进度监控
spring boot·腾讯云·腾讯云cos
2401_865854884 天前
腾讯云新出的Clawdbot怎么样
云计算·腾讯云
G31135422735 天前
IM即时通讯实现原理
腾讯云
咕噜企业分发小米7 天前
腾讯云IM如何与第三方实时音频服务集成?
云计算·音视频·腾讯云
咕噜企业分发小米7 天前
腾讯云IM与TRTC集成时,如何优化用户体验?
云计算·腾讯云