微信小程序中实现人脸识别认证

本文介绍了在微信小程序中实现人脸识别认证的过程,包括开发准备、步骤、客户端与服务端开发,以及遇到的苹果手机报错问题和解决方法。在解决过程中,通过延迟调用接口来确保webview加载完成,从而成功解决苹果手机上的人脸识别失败问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言
回顾2020年,最有意思的事情就是用微信小程序实现了人脸识别认证功能,期间也遇到一些问题。希望通过本文让大家了解在微信小程序中如何实现人脸识别认证功能以及如何解决遇到的问题。
一、开发准备
1、前提条件
目前微信小程序人脸识别接口(微信开放社区对其定义为 “微信人脸核身接口能力”)只对特定的主体及类目的小程序开放,详见 微信人脸核身接口能力
笔者使用的微信小程序主体类目为医疗,因此能申请该权限。
2、步骤及流程
根据 微信人脸核身接口能力文档介绍,申请接口权限的步骤及流程如下:

在这里插入图片描述
由于笔者使用的微信小程序已经接入了微信电子健康卡开放平台,故不用发送邮件申请,可以直接在开放平台的“小程序人脸识别申请”菜单中申请开通接口权限,如下图所示:
在这里插入图片描述
审核通过后,使用微信小程序账号登录微信公众平台,在“开发管理”—“接口设置”中添加人脸识别身份验证接口类目,如下图所示:
在这里插入图片描述

二、开始开发
1、小程序客户端
由于笔者希望在小程序的web-view组件的H5页面中调用小程序页面的人脸识别功能,故单独新建了一个页面wxfacialverify,在js的onLoad方法中接收H5传过来的参数,然后调用人脸识别接口。wxfacialverify.js代码如下:

Page({
   
  data: {
   
    faceCheckData:{
   },
  },
  onLoad: function (options) {
   
    var that = this;
    //页面加载调取人脸识别接口(原则上应该对options的携带的参数进行校验)
    that.facialRecognitionVerify(options);
  },
facialRecognitionVerify: function (faceCheckData) {
   
    wx.startFacialRecognitionVerify({
   
      name: faceCheckData.name,//姓名
      idCardNumber: faceCheckData.idCardNumber, //身份证号
      //人脸识别成功回调通知
      success (res) {
   
        var verifyResult = res.verifyResult;
        wx.request({
   
				  url: '/faceCheck/faceCheck.htm?action=faceIdentifyCheck', 
				  data: {
   'name':faceCheckData.name,'idCardNumber':faceCheckData.idCardNumber,
				  'verifyResult ':verifyResult
				   },
				  header: {
   
				    'content-type': 'application/json' 
				  },
				  success (res) {
   
				    console.log(res.data)
				  }
				})
      },
      //人脸识别失败的回调通知
      
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值