pleaseAnswer

人脸识别申请流程

微信人脸核身接口能力

1 能力背景

  • 调用人脸核身的小程序 其主体以及类目需要在限定的类目范围内,且与小程序的业务背景一致。

应用:光大银行的人脸识别 -> 金融-银行

2 准备接入

  1. 申请邮件发送 参考"微信人脸核身接口能力"
  2. 开通权限后,在"开发-接口设置"中,添加可用类目开通接口

3 接口文档

wx.startFacialRecognitionVerify(OBJECT)
  • 功能:请求进行基于生物识别的人脸核身
  • 验证方式:在线验证--读数字 屏幕闪烁
/**
 * return 值
 * errMsg: String 错误信息
 * errCode:Number 错误码
 * verifyResult: String 本次认证结果凭证
*/
wx.startFacialRecognitionVerify({
    name: String, // 必填
    idCardNumber: String, // 必填
    success: Function,
    fail: Function,
    complete: Function, // 必填
    // 0-读数字 1- 反光 2-检查是否支持反光
    checkAliveType: Number
})

4 应用

export function startFacialRecognitionVerify(data,callBack) {
  let mune = {
    10001: \'参数错误\',
    10002: \'人脸特征检测失败\',
    10003: \'身份证号不匹配\',
    10004: \'比对人脸信息不匹配\',
    10005: \'环境光线太亮\',
    10006: \'appid没有权限(后台验证部分)\',
    10007: \'后台获取图片失败\',
    10008: \'比对系统失败\',
    10009: \'未查到身份证照片比对源\',
    10010: \'照片质量不满足比对要求\',
    10015: \'比对服务暂时不可用\',
    10016: \'存储用户图片失败\',
    10017: \'非法identify_id\',
    10018: \'用户信息不存在\',
    10020: \'认证超时\',
    10022: \'重复的请求,返回上一次的结果\',
    10026: \'用户身份证数据不在比对数据库中\',
    10027: \'语音识别失败\',
    10028: \'唇动检测失败\',
    10031: \'公众号/小程序没有设置昵称\',
    10040: \'请求数据编码不对,必须是UTF8编码\',
    10041: \'非法user_id_key\',
    10042: \'请求过于频繁,稍后再重试\',
    10045: \'系统失败\',
    10052: \'请求数超限制\',
    10057: \'请求数超限制\',
    10066: \'人脸流水号bioid重复\',
    10069: \'活体检测暂时不可用\',
    90100: \'用户取消\',
    90101: \'用户未授权\',
    90102: \'底层库出错\',
    90103: \'CDN上传出错\',
    90104: \'获取配置信息出错\',
    90105: \'获取确认页信息失败\',
    90106: \'相机初始化失败\',
    90107: \'用户采集人脸超时\',
    90108: \'用户采集过程中抖动太剧烈\',
    90109: \'设备不支持人脸采集\',
    90199: \'未知错误\',
  }
  // 检查是否支持反光 -- 支持则使用反光 不支持则调用微信自带判断
  wx.checkIsSupportFacialRecognition({
    checkAliveType: 1,
    success:function(res) {
      if(res.errcode == 0 || res.errMsg == \'checkIsSupportFacialRecognition:ok\') {
        let cb = {
          ...data,
          success(){
            callBack("人脸识别成功",true)
          },
          fail(res){
            let msg = res.errMsg
            if(res.errCode) {
              let tip = mune[res.errCode];
              msg = `人脸核身失败(${tip}),请稍后重试`
            }
            callBack(msg,false)
          }
        }
        wx.startFacialRecognitionVerifyAndUploadVideo(cb)
        return
      } else {
        data.checkAliveType = 2
        let cb = {
          ...data,
          success(){
            callBack("人脸识别成功",true)
          },
          fail(res){
            let msg = res.errMsg
            if(res.errCode) {
              let tip = mune[res.errCode];
              msg = `人脸核身失败(${tip}),请稍后重试`
            }
            callBack(msg,false)
          }
        }
        wx.startFacialRecognitionVerifyAndUploadVideo(cb)
        return
      }
    },
    fail: res => {
      wx.showToast(\'微信版本过低\')
    }
  })
}

分类:

技术点:

相关文章:

  • 2022-01-05
  • 2021-07-21
  • 2021-12-01
猜你喜欢
  • 2022-12-23
  • 2021-11-30
  • 2021-05-02
  • 2022-01-31
  • 2021-06-17
  • 2021-12-22
  • 2021-07-09
相关资源
相似解决方案