THINKPHP6.02调用百度H5实名认证接口
THINKPHP6.02调用百度H5实名认证接口
1、首先你要有百度账号并通过实名认证
2、在人脸识别处新建应用,如下三张图所示:
你在你的账号能看到上面的三张图,证明你的前提工作已经准备好。下面是代码。
3、代码部份:
3.1先获取ACCESS_TOKEN,再获取VERIRY_TOKEN,然后才可以进入实人认证界面。注意:要把VERIRY_TOKEN记下来或自行存进数据库,因为一会查询验证结果时,要用的。
public function index(){//第一步:获取ACCESS_TOKEN $data = array("grant_type" => "client_credentials", "client_id" => "9VxDIKAY9lKc1fu1CeeIi***","client_secret"=>'NicAlBwS7e60WkgygR4uaZTo0258e***' );//client_id和client_secret自行在百度后台查找,grant_type是固定的$data_string = $data;$url = "https://aip.baidubce.com/oauth/2.0/token";$ch = curl_init ();curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt ( $ch, CURLOPT_URL, $url );curl_setopt ( $ch, CURLOPT_POST, 1 );curl_setopt ( $ch, CURLOPT_HEADER, 0 );curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data_string );$response = curl_exec($ch);if (curl_errno($ch)) {print curl_error($ch);}curl_close($ch); //将获取到的数据转成JSON$my_json = json_decode($response);//第二步:利用ACCESS_TOKEN获取verify_token$data_string = "{\"plan_id\":10928}";//注意这一步,必须是JSON格式,否则会提示方案不存在,当然,你必须提前在后台申请方案$url = "https://aip.baidubce.com/rpc/2.0/brain/solution/faceprint/verifyToken/generate?access_token=".$my_json->access_token;$ch = curl_init ();curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt ( $ch, CURLOPT_URL, $url );curl_setopt ( $ch, CURLOPT_POST, 1 ); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data_string );curl_setopt ( $ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); $response = curl_exec($ch);if (curl_errno($ch)) {print curl_error($ch);}curl_close($ch);//将获取到的数据转成JSON$my_json = json_decode($response); //第三步:将拼接的URL输出到页面$url="https://brain.baidu.com/face/print/?token=".$my_json->result->verify_token."&successUrl=http://XXXX.oicp.net:50559/public/index.php/index/success1"."&failedUrl=http://XXXX.oicp.net:50559/public/index.php/index/faild1";View::assign('url',$url); View::assign('verify_token',$my_json->result->verify_token); // 模板输出return View::fetch('index');}
3.2要有成功的页面和失败的页面。
//认证成功后跳转的页面
public function success1(){// 模板输出return View::fetch('success1');}//认证失败后跳转的页面public function faild1(){// 模板输出return View::fetch('faild1');}
3.3用刚才记住的VERIFY_TOKEN来查询认证结果。
//查询页面
public function query(){//获取传进来的verify_token$verify_token=input('get.verify_token');echo $verify_token."</br>";//第一步:获取ACCESS_TOKEN $data = array("grant_type" => "client_credentials", "client_id" => "9VxDIKAY9lKc1fu1CeeIi***","client_secret"=>'NicAlBwS7e60WkgygR4uaZTo0258e***');$data_string = $data;$url = "https://aip.baidubce.com/oauth/2.0/token";$ch = curl_init ();curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt ( $ch, CURLOPT_URL, $url );curl_setopt ( $ch, CURLOPT_POST, 1 );curl_setopt ( $ch, CURLOPT_HEADER, 0 );curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data_string );$response = curl_exec($ch);if (curl_errno($ch)) {print curl_error($ch);}curl_close($ch); //将获取到的数据转成JSON$my_json = json_decode($response);//第二步:利用ACCESS_TOKEN加上这个用户认证时使用的verify_token$data_string = "{\"verify_token\":\"".$verify_token."\"}";//注意这一步,必须是JSON格式$url = "https://aip.baidubce.com/rpc/2.0/brain/solution/faceprint/result/detail?access_token=".$my_json->access_token;$ch = curl_init ();curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt ( $ch, CURLOPT_URL, $url );curl_setopt ( $ch, CURLOPT_POST, 1 ); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data_string );curl_setopt ( $ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); $response = curl_exec($ch);if (curl_errno($ch)) {print curl_error($ch);}curl_close($ch);echo $response;//将结果从UNICODE转成中文$result = unicode2Chinese($response);echo $result;//将获取到的数据转成JSON//$my_json = json_decode($response); }
3.4辅助代码,UNICODE转中文。
function unicode2Chinese($str){return preg_replace_callback("#\\\u([0-9a-f]{4})#i",function ($r) {return iconv('UCS-2BE', 'UTF-8', pack('H4', $r[1]));},$str);}
4、效果如下图:
THINKPHP6.02调用百度H5实名认证接口相关推荐
- php百度人脸识别做登陆,php调用百度人脸识别接口查询数据库人脸信息实现验证登录功能...
博主在进行鼎食城毕业设计时,需要实现一个人脸识别登录功能,想到可以利用百度的人脸识别接口来完成,于是便去下载了百度的识别SDK,我用的是PHP,需要的的可以去下载其他版本,以下是识别效果: 用户在开始 ...
- 【2019-07-23】]python3 把日语翻译为中文 调用百度翻译API接口及API申请使用教程
点击申请百度翻译API,得到一个你自己的API账户. 点击查看申请教程,感谢教程原作者. API官网提供了一个python2的使用接口的demo还有详细的解释文档 想用python3完成,代码几乎照搬 ...
- 调用百度人脸识别接口实现人脸识别
调用百度人脸识别接口实现人脸识别 目标: 1.学习使用百度AI开放平台进行人脸识别 2.将学到的内容:JSON数据,HTTP API调用,base64图片编码与解码 import json impor ...
- php 人脸识别接口,php调用百度人脸识别接口查询数据库人脸信息实现验证登录功能...
博主在进行鼎食城毕业设计时,需要实现一个人脸识别登录功能,想到可以利用百度的人脸识别接口来完成,于是便去下载了百度的识别SDK,我用的是PHP,需要的的可以去下载其他版本,以下是识别效果: 用户在开始 ...
- 调用百度地图API接口制作热力图
调用百度地图API接口制作热力图 Python学了很久,也做了一些机器学习的demo,利用matolotlib库做过一些可视化.今天呢想尝试做一下热力图.先PO一张我最终效果图. 因为数据原因,效果一 ...
- 调用百度h5活体检测,参数video_base64,视频解析错误的问题
调用百度人脸识别h5活体检测接口时,提示视频解析错误,保存视频后发现, 默认的视频编码是vp8, 而接口需要的h264 , 如果在后台用ffmpeg实现转码的 话,复杂度比较高, 找了下资料发现,在前 ...
- python百度翻译api申请网页版_python3调用百度翻译api接口实现全过程
现在很都平台的翻译api接口都开始收费了,比如谷歌.微软.yandex等等,注册非常麻烦,而且要钱,目前就百度还剩下一个最基础的翻译api不需要钱,今天我要和大家分享的是怎样使用python3调用百度 ...
- python通过调用百度天气API接口获取天气信息
python调用百度接口,获取天气信息 需要到百度注册开发者账号,通过账号获取到每个账号私有的应用访问(AK) 使用此脚本还需要district_id.csv文档,在我资源中可以免费下载,也可在百度天 ...
- Android上调用百度人脸识别接口
写了一个简单的调用百度人脸识别在线的JAVA接口,识别率挺高的,但是目前写得还不是很全面,然后打开相册选取图片那一部分,以及工具类代码,是有参考别人写的代码,具体是摘自哪里之前没有保存. 这里贴一些主 ...
最新文章
- 零基础入门学习Python(14)-格式化字符串
- 树莓派人脸识别门禁opencv4.2_树莓派人脸识别实际应用:人脸识别门禁
- [转]parseUrl函数
- 2019年陕西高考分数线出炉
- mysql 临时文件目录_MySQL数据库的临时文件究竟储存在哪里
- c++产生死锁的必要条件?已经如何预防死锁?
- linux操作指令及根目录介绍
- Mysql启动自己主动设置max_connections为其它值
- 软件测试基础 - 系统测试
- python3 单例模式_当python,单例模式,多例模式,一次初始化遇到一起
- Volley,Okhttp,Retrofit源码研究心得大总结
- 将oracle的数据导入到mysql的三种方法
- 信息与网络安全基础知识汇总
- 利用Python批量修改多个ass字幕文件
- 减少域名DNS解析时间将网页加载速度提升新层次
- Swift 下标用法
- 数据库学习(四)—SQL数据查询01(简单方法条件查询)
- [cryptoverse ctf 2022] cvctf
- 竞争对手强势、内忧仍存,小米如何守住智能家居高地?
- 视频教程-沐风老师Scratch3.0快速入门视频课程-其他