摘要
微信小程序使用人脸识别,只支持微信自己开放的接口。使用第三方的,微信会审核不通过。后续如果开放第三方,请麻烦您留言告诉我。
目前并未全面开放,特定的主体类目+邮件形式申请开放。具体参考下方官方发布的查看。
官方链接:微信人脸核身接口能力
符合开通条件即可支持开通,目前使用不收费,后续是否收费的问题请关注开通规范,如有收费信息将会在官方渠道通知。

申请
具体申请流程参照上方连接查看
开通小程序后台的接口权限入口后,开发者可以通过公众平台mp.weixin.qq.com登录小程序账号,在“开发-接口设置”中,添加可用类目开通接口。即可按照下述方式,开发调试试用接口。
实现
一、获取本机支持的 SOTER 生物认证方式
判断当前手机是否支持 指纹识别、人脸识别,以便于做不同的处理。
wx.checkIsSupportSoterAuthentication(Object object)
示例代码
wx.checkIsSupportSoterAuthentication({
success(res) {
// res.supportMode = [] 不具备任何被SOTER支持的生物识别方式
// res.supportMode = ['fingerPrint'] 只支持指纹识别
// res.supportMode = ['fingerPrint', 'facial'] 支持指纹识别和人脸识别
}
})
二、请求进行基于生物识别的人脸核身
此接口在申请之后开放,官方文档上查不到
wx.startFacialRecognitionVerify(OBJECT)
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | String | 是 | 姓名 |
| idCardNumber | String | 是 | 身份证号码 |
| success | Function | 否 | 调用成功回调 |
| fail | Function | 否 | 调用失败回调 |
| complete | Function | 是 | 调用完成回调(成功或失败都会回调) |
| checkAliveType | Number | 否 | 人脸核验的交互方式,默认读数字。为2时,先检查是否可以屏幕闪烁,不可以则自动为读数字 |
返回参数
| 参数 | 类型 | 说明 |
|---|---|---|
| errMsg | String | 错误信息 |
| errCode | Number | 错误码 |
| verifyResult | String | 本次认证结果凭据,第三方可以选择根据这个凭据获取相关信息 |
回调结果说明



示例代码:
wx.startFacialRecognitionVerify({
name:'张三',
idCardNumber:'123456789012345678',
success(res){
},
fail(err){
}
})
三、再次获取核验结果api(后端获取用户的信息数据,前端传参verify_result,以下都是后端处理)
此接口是前端完成人脸核身后,基于前端返回的凭据,通过后台api再次进行核验结果的校验、确认之用。有助于提高安全性,请接入。
1、说明
人脸核身之后,开发者可以根据jsapi返回的verify_result向后台拉取当次认证的结果信息。
2、请求URL
https://api.weixin.qq.com/cityservice/face/identify/getinfo?access_token={access_token}
3、请求数据说明
| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
| verify_result | String | 是 | jsapi返回的加密key(凭据) |
4、返回参数说明
| 参数 | 类型 | 描述 |
|---|---|---|
| errcode | int | 错误码, 0表示成功 |
| errmsg | string | 错误信息 |
| identify_ret | int | 认证结果 |
| identify_time | uint32 | 认证时间 |
| validate_data | string | 用户读的数字(如是读数字) |
| openid | string | 用户openid |
| user_id_key | string | 用于后台交户表示用户姓名、身份证的凭证 |
| finish_time | uint32 | 认证结束时间 |
| id_card_number_md5 | string | 身份证号的md5(最后一位X为大写) |
| name_utf8_md5 | string | 姓名MD5 |
5、错误码对应信息
| errcode | 备注 |
|---|---|
| 84001 | 非法identity_id |
| 84002 | 用户信息过期 |
| 84003 | 用户信息不存在 |
版权声明:本文为sunzhibin1原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。