手机游戏
经典单机
角色扮演
休闲益智
动作冒险
射击枪战
赛车竞速
模拟经营
解密闯关
策略战争
手机软件
时尚购物
体育运动
资讯阅读
教育学习
摄影摄像
生活服务
效率办公
聊天社交
视频盒子
其它软件
新闻资讯
游戏攻略
软件教程
游戏问答
软件资讯
软件技术
叨叨念念
网站技术
技术问答
软件教程
资源资料
原创作品
代码学习
网页设计
网络技术
合集
合集
游戏合集
软件合集
资讯合集
视频合集
首页 > 叨叨念念 > 叨叨念念

支付宝身份验证API开发记录

作者:星知苑 时间:2021-01-02 15:57:46

因为有项目要用到支付宝人脸认证,所以就有了这次开发记录。

支付宝SDK:https://opendocs.alipay.com/open/54/103419

支付宝身份认证官方文档:https://opendocs.alipay.com/open/20181012100420932508/api

 

一、授权申请

1、支付宝身份认证能力开通:https://app.alipay.com/abilityprod/detail?abilityCode=AM010501000000015744 (需要企业认证才可以开通,个人认证无法开通)

2、申请一个应用和密钥,绑定支付宝身份认证能力(教程请去支付宝支持帮助)[break]

 

二、SDK上传并加载

 

require_once 'aop/AopClient.php';
require_once 'aop/request/AlipayUserCertifyOpenInitializeRequest.php'; //身份认证初始化服务
require_once 'aop/request/AlipayUserCertifyOpenCertifyRequest.php'; //身份认证开始认证
require_once 'aop/request/AlipayUserCertifyOpenQueryRequest.php'; //身份认证记录查询

 

 

三、身份认证初始化服务

接口:alipay.user.certify.open.initialize

 

        $aop = new AopClient ();
        $aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
        $aop->appId = 'app id 应用id';
        $aop->rsaPrivateKey = '开发者私钥';
        $aop->alipayrsaPublicKey = '支付宝公钥';
        $aop->apiVersion = '1.0';
        $aop->signType = 'RSA2';
        $aop->postCharset='utf-8';
        $aop->format='json';
        $params = array();
        $params = [
            'outer_order_no' => md5(time().rand()), //商户请求的唯一标识,最大32位
            'biz_code' => 'FACE',
            'identity_param' => [
                'identity_type' => 'CERT_INFO',
                'cert_type' => 'IDENTITY_CARD',
                'cert_name' => '身份证姓名',
                'cert_no' => '身份证号码',
            ],
            'merchant_config' => [
                'return_url' => 'https://www.myxzy.com', //回跳的目标地址
            ]
        ];
        $request = new AlipayUserCertifyOpenInitializeRequest();
        $request->setBizContent(json_encode($params)); //$params转化为json
        $result = $aop->execute($request);
        $responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
        $resultCode = $result->$responseNode->code;
        if(!empty($resultCode)&&$resultCode == 10000){
            return $result->$responseNode->certify_id; //本次申请操作的唯一标识
        }
本接口主要的坑:参数出现二维数组,并不是一维数组。验签通过就会返回certify_id

 

 

四、身份认证开始认证

接口:alipay.user.certify.open.certify

 

        $aop = new AopClient ();
        $aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
        $aop->appId = 'app id 应用id';
        $aop->rsaPrivateKey = '开发者私钥';
        $aop->alipayrsaPublicKey = '支付宝公钥';
        $aop->apiVersion = '1.0';
        $aop->signType = 'RSA2';
        $aop->postCharset='utf-8';
        $aop->format='json';
        $params = array();
        $params['certify_id'] = 'certify_id'; //上一步获取的操作的唯一标识
        $request = new AlipayUserCertifyOpenCertifyRequest();
        $request->setBizContent(json_encode($params));
        $result = $aop->pageExecute($request,'GET');
        return htmlspecialchars($result);
直接把返回的结果生成二维码,使用支付宝扫描即可进行实名认证。

 

其他方式一直返回“永远不要放弃”的报错

499-1.png

本接口最大的坑:官网给的文档很有迷惑性,没讲清楚如何生成二维码,以为像支付宝支付一样生成一个链接转化成二维码即可,但是完全不是一回事。估计大部分不成功的就卡在这里。

其实我这里还碰到一个坑,就是&转义成了&导致生成的二维码扫码失败。

 

五、身份认证记录查询

 

接口:alipay.user.certify.open.query

 

        $aop = new AopClient ();
        $aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
        $aop->appId = 'app id 应用id';
        $aop->rsaPrivateKey = '开发者私钥';
        $aop->alipayrsaPublicKey = '支付宝公钥';
        $aop->apiVersion = '1.0';
        $aop->signType = 'RSA2';
        $aop->postCharset='utf-8';
        $aop->format='json';
        $params = array();
        $params['certify_id'] =  'certify_id'; //上一步获取的操作的唯一标识
        $request = new AlipayUserCertifyOpenQueryRequest();
        $request->setBizContent(json_encode($params));
        $result = $aop->execute($request);
        $responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
        $resultCode = $result->$responseNode->code;
        if(!empty($resultCode)&&$resultCode == 10000){
            if($result->$responseNode->passed=='T'){
                return true;
            }
        }
第四步用户认证后,这步查询才会成功。

 

 

良心推荐

传奇游戏手机所有版本下载
  • 传奇无限元宝版本
  • 蓝月王者正版下载
  • 蓝月至尊版无限元宝
  • 传奇手游h5无限元宝服破解版
  • 传奇游戏内购破解版下载
  • 蓝月至尊版满v变态版
复古的游戏画面,还可以让你直接的挂机非常让一些喜欢怀旧的玩家的喜欢,想当年那种你在各种网吧或是在家里,三更半夜起来刷各种戒指或者是装备,满满都是情怀和回忆,小编自己也是玩传奇出身的,在现在的手机上面也是有着各种不同的版本,整理收集之后所有的版本都是可以直接的下载免费的推荐给你。

相关资讯