阿里云增强版实人认证--银行卡要素核验

这篇具有很好参考价值的文章主要介绍了阿里云增强版实人认证--银行卡要素核验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

阿里云官网参考文档:银行卡要素核验 - 增强版实人认证 - 阿里云

准备工作:

一:登录阿里云控制台,选择实人认证

uncaught alibabacloud\tea\exception\teaerror: code: 404, specified access ke,阿里云号码认证服务,阿里云,云计算

左上角功能切换为 增强版实人认证

uncaught alibabacloud\tea\exception\teaerror: code: 404, specified access ke,阿里云号码认证服务,阿里云,云计算

 接入场景设置--》卡证核身--》认证场景ID 【代码中需要用到】

uncaught alibabacloud\tea\exception\teaerror: code: 404, specified access ke,阿里云号码认证服务,阿里云,云计算

 

二:点击头像下拉框里的AccessKey管理

uncaught alibabacloud\tea\exception\teaerror: code: 404, specified access ke,阿里云号码认证服务,阿里云,云计算

 查看AccessKey ID 和Secret  【代码中需要用到】uncaught alibabacloud\tea\exception\teaerror: code: 404, specified access ke,阿里云号码认证服务,阿里云,云计算

 二:执行命令下载php SDK

composer require alibabacloud/cloudauth-20200618 2.0.4

注意:如果项目中因缺少composer.lock文件或其他原因导致执行composer命令时会将项目中原本的composer引入的库文件更新。

解决办法是,在本地电脑上新建个文件夹,使用命令窗口执行上面的命令把SDK下载下来,然后在项目中新建个文件夹,名字可以取名为sdk,把下载的SDK资源包上传到该文件夹中,在项目中引入该资源包即可。

代码参考路径:阿里云 OpenAPI 开发者门户https://next.api.aliyun.com/api/Cloudauth/2020-06-18/VerifyBankElement?params={}&lang=PHP&tab=DEMO

注意要选对版本,跟上面composer下载的资源包的版本要一致。

uncaught alibabacloud\tea\exception\teaerror: code: 404, specified access ke,阿里云号码认证服务,阿里云,云计算

下面是我整理的代码,sdk的下载方法使用的是上面先下载到本地再放入项目中的。

//验证姓名、身份证号、银行卡号、手机号是否匹配
function checkBankNoByAli($data){
		$rs=array('code'=>0,'msg'=>'','info'=>array());

		$ali_realauth_sceneid=''; //认证场景ID
		$ali_accesskeyid=''; //accesskeyid
		$ali_accesskeysecret=''; //secret

		if(!$ali_realauth_sceneid){
			$rs['code']=1001;
			$rs['msg']='认证场景ID错误';
			return $rs;
		}

		if(!$ali_accesskeyid){
			$rs['code']=1001;
			$rs['msg']='accesskeyid错误';
			return $rs;
		}

		if(!$ali_accesskeyid){
			$rs['code']=1001;
			$rs['msg']='accesskeysecret错误';
			return $rs;
		}

		
		require_once '/sdk/alicloudauth/autoload.php'; //路径需替换为自己项目中的实际路径

		$client = createClient($ali_accesskeyid, $ali_accesskeysecret);

        $result=json_decode($result,true);

        $verifyBankElementRequest = new AlibabaCloud\SDK\Cloudauth\V20200618\Models\VerifyBankElementRequest([
            "sceneId" => $ali_realauth_sceneid,
            "outerOrderNo" => random(32),
            "mode" => "VERIFY_BANK_CARD",
            "bankCardNo" => $data['bankno'],
            "idNo" => $data['cardno'],
            "idName" => $data['realname'],
            "mobile" => $data['mobile']
        ]);
        $runtime = new AlibabaCloud\Tea\Utils\Utils\RuntimeOptions([]);

        try {

            $result = $client->verifyBankElementWithOptions($verifyBankElementRequest, $runtime);

            $result=json_encode($result);
            
            $result=json_decode($result,true);

            $code=$result['body']['code'];
            //$message=$result['body']['message'];

            if($code !=200){
				$rs['code']=1003;
				$rs['msg']='验证失败';
				return $rs;
            }

            $resultObject=$result['body']['resultObject'];

            if(isset($resultObject['passed'])){
				$return_status=$resultObject['passed'];
	            if($return_status !='T'){
					$rs['code']=1004;
					$rs['msg']='验证失败';
					return $rs;
	            }
            }

            $return_code=$resultObject['subCode'];

            if($return_code !=200){

            	$rs['code']=1005;
				$rs['msg']='验证失败';
				return $rs;
            }
            
        }
        catch (Exception $error) {
            if (!($error instanceof AlibabaCloud\Tea\Exception\TeaError)) {
                $error = new AlibabaCloud\Tea\Exception\TeaError([], $error->getMessage(), $error->getCode(), $error);
            }
            // 如有需要,请打印 error
           // Utils::assertAsString($error->message);
           $rs['code']=1006;
           $rs['msg']=$error->message;
           return $rs;
        }


	}

	//阿里云证件号配置生成
	function createClient($accessKeyId, $accessKeySecret){

        $config = new  Darabonba\OpenApi\Models\Config([
            // 您的 AccessKey ID
            "accessKeyId" => $accessKeyId,
            // 您的 AccessKey Secret
            "accessKeySecret" => $accessKeySecret
        ]);

        // 访问的域名
        $config->endpoint = "cloudauth.aliyuncs.com";
        return new AlibabaCloud\SDK\Cloudauth\V20200618\Cloudauth($config);
    }
    
    //生成随机数
    function random($length = 6 , $numeric = 0) {
		PHP_VERSION < '4.2.0' && mt_srand((double)microtime() * 1000000);
		if($numeric) {
			$hash = sprintf('%0'.$length.'d', mt_rand(0, pow(10, $length) - 1));
		} else {
			$hash = '';
			$chars = 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789abcdefghjkmnpqrstuvwxyz';
			$max = strlen($chars) - 1;
			for($i = 0; $i < $length; $i++) {
				$hash .= $chars[mt_rand(0, $max)];
			}
		}
		return $hash;
	}

    
    //调用方法
    public function test(){
        
        $check_data=array(
            'bankno'    =>'', //银行卡号
            'realname'  =>'', //姓名
            'cardno'    =>'', //身份证号
            'mobile'    =>'' //手机号
        );

        $result=checkBankNoByAli($check_data);

        if($result['code']!=0){
            return $result;
        }else{
            return array(
                'code'=>0,
                'msg'=>'验证成功',
                'info'=>array()
            );
        }

    }

 注意一点:24小时内重复查询相同信息超过10次,会被锁定12小时,测试的时候控制好请求次数。文章来源地址https://www.toymoban.com/news/detail-792259.html

到了这里,关于阿里云增强版实人认证--银行卡要素核验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • openCV实践项目:银行卡卡号识别

    本文用于对之前openCV知识点学习的复习及实践。要求达到以下效果: 本项目本质上就是进行模板匹配。 注: 为多用到所学知识,为了加深理解多加了些步骤 ,实际上本项目可以很简单就能完成。 模板: 转换成灰度图,二值化处理,用于轮廓检测。  我们将模板中的十个数

    2023年04月15日
    浏览(47)
  • 毕设 基于opencv的银行卡识别

    🔥 今天学长向大家分享一个毕业设计项目 🚩 毕业设计 基于opencv的银行卡识别 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:3分 创新点:4分 项目运行效果: 毕业设计 机器视觉opencv银行卡识别系统 项目获取: https://gitee.com/assistant-a/project-sharing 银

    2024年03月14日
    浏览(53)
  • 毕业设计 基于opencv的银行卡识别

    🔥 今天学长向大家分享一个毕业设计项目 🚩 毕业设计 基于opencv的银行卡识别 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:3分 创新点:4分 项目运行效果: 毕业设计 机器视觉opencv银行卡识别系统 项目获取: https://gitee.com/assistant-a/project-sharing 银

    2024年02月20日
    浏览(42)
  • 计算机视觉项目-银行卡卡号自动识别

    😊😊😊 欢迎来到本博客 😊😊😊 本次博客内容将继续讲解关于OpenCV的相关知识,利用项目讲解继续巩固自己得基础知识。 🎉 作者简介 : ⭐️⭐️⭐️ 目前计算机研究生在读。主要研究方向是人工智能和群智能算法方向。目前熟悉python网页爬虫、机器学习、计算机视觉

    2023年04月13日
    浏览(49)
  • 毕设开题分享 基于opencv的银行卡识别

    🔥 今天学长向大家分享一个毕业设计项目 🚩 毕业设计 基于opencv的银行卡识别 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:3分 创新点:4分 项目运行效果: 毕业设计 机器视觉opencv银行卡识别系统 项目获取: https://gitee.com/sinonfin/algorithm-sharing 银行

    2024年01月20日
    浏览(50)
  • CSS3绘制3D银行卡片层叠展示特效

    使用纯css3绘制3D银行卡层叠展示特效 具体示例如下 实现这个3D卡片,需要在最外层父级元素添加 transform: translate3d(0, 0, 0);transform-style: preserve-3d ,声明 3D ,结合 css3 中 transform 的变换,平移就可以实现 村民私自搭桥收费被判刑 2023-07-10 聊一下大学几年如何渡过 2023-07-09 聊一聊抑郁

    2024年02月16日
    浏览(53)
  • 大数据毕设分享 基于opencv的银行卡识别

    🔥 今天学长向大家分享一个毕业设计项目 🚩 毕业设计 基于opencv的银行卡识别 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:3分 创新点:4分 项目运行效果: 毕业设计 机器视觉opencv银行卡识别系统 项目获取: https://gitee.com/sinonfin/algorithm-sharing 银行

    2024年03月13日
    浏览(73)
  • 智能科学毕设分享(算法) 基于opencv的银行卡识别

    🔥 今天学长向大家分享一个毕业设计项目 🚩 毕业设计 基于opencv的银行卡识别 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:3分 创新点:4分 项目运行效果: 毕业设计 机器视觉opencv银行卡识别系统 项目获取: https://gitee.com/assistant-a/project-sharing 银

    2024年02月21日
    浏览(47)
  • 计算机毕业分享(含算法) 基于opencv的银行卡识别

    🔥 今天学长向大家分享一个毕业设计项目 🚩 毕业设计 基于opencv的银行卡识别 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分 工作量:3分 创新点:4分 项目运行效果: 毕业设计 机器视觉opencv银行卡识别系统 项目获取: https://gitee.com/sinonfin/algorithm-sharing 银行

    2024年02月02日
    浏览(43)
  • 基于python+pyqt实现opencv银行卡身份证等识别

        识别结果 查看处理过程 历史记录 无法粘贴视频........ 视频和代码都已上传百度网盘,放在主页置顶文章

    2024年02月11日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包