首先,在微信小程序上使用人脸识别的功能。需要符合小程序的资质要求
微信小程序支持行业类目及资质文件要求如下:
小程序一级类目 | 小程序二级类目 | 小程序三级类目 | 使用人脸核验接口所需资质 |
快递与邮政 | 寄件/收件 | / | 《快递业务经营许可证》 |
物流服务 | 货物运输 | / | 《道路运输经营许可证》(经营范围需含网络货运) |
教育 | 学历教育(学校) | / | (2选1): 1. 公立学校:由教育行政部门出具的审批设立证明 或 《事业单位法人证书》 2. 私立学校:《民办学校办学许可证》与《民办非企业单位登记证书》 |
医疗 | 公立医疗机构 | / | 《医疗机构执业许可证》与《事业单位法人证书》 |
互联网医院 | / | 仅支持公立医疗机构互联网医院(2选1): 1.卫生健康部门的《设置医疗机构批准书》 2.《医疗机构执业许可证》(范围均需含“互联网诊疗”或名称含“互联网医院”等相关内容) | |
医疗服务 | 三级私立医疗机构 | / | 仅支持三级以上私立医疗机构,提供《医疗机构执业许可证》、《营业执照》及《医院等级证书》 |
政务民生 | 所有二级类目 | / | 仅支持政府/事业单位,提供《组织机构代码证》或《统一社会信用代码证》 |
金融业 | 银行 | / | (2选1): 1. 《金融许可证》 2. 《金融机构许可证》 |
保险 | / | (8选1): 1. 《保险公司法人许可证》 2. 《经营保险业务许可证》 3. 《保险营销服务许可证》 4. 《保险中介许可证》 5. 《经营保险经纪业务许可证》 6. 《经营保险公估业务许可证》 7. 《经营保险资产管理业务许可证》 8. 《保险兼业代理业务许可证》 | |
信托 | / | (2选1): 1. 《金融许可证》 2. 《金融机构许可证》 | |
基金 | 公募基金 | (4选1): 1. 《经营证券期货业务许可证》且业务范围必须包含“基金” 2. 《基金托管业务许可证》 3. 《基金销售业务资格证书》 4. 《基金管理资格证书》 | |
证券/期货 | / | 《经营证券期货业务许可证》 | |
消费金融 | / | 银监会核准开业的审批文件与《金融许可证》与《营业执照》 | |
汽车金融 | / | 仅支持汽车金融主体,同时提供: 1. 《营业执照》(公司名称包含“汽车金融” ;营业范围包含“汽车金融”业务) 2. 《金融许可证》或银保监会及其派出机构颁发的开业核准批复文件 | |
交通服务 | 打车(网约车) | 快车/出租车/专车/其他网约车 | 自营性网约车:提供《网络预约出租汽车经营许可证》 网约车平台:提供与网约车公司的合作协议以及合作网约车公司的《网络预约出租汽车经营许可证》 |
航空 | / | 航司:提供《公共航空运输企业经营许可证》 机场:提供《民用机场使用许可证》或《运输机场使用许可证》 | |
地铁 | / | 提供地铁公司《营业执照》 | |
水运 | / | 船企:提供《水路运输许可证》 港口:提供《港口经营许可证》 | |
骑车 | / | 仅支持共享单车,提供共享单车公司《营业执照》 | |
火车/高铁/动车 | / | 仅支持铁路局/公司官方,提供铁路局/公司《营业执照》 | |
公交 | 公交公司 | 提供公交公司《营业执照》 | |
长途汽车 | / | (2选1): 1. 《道路运输经营许可证》(经营范围需含客运) 2. 官方指定联网售票平台(授权或协议或公开可查询文件) | |
租车 | / | 运营公司提供《备案证明》与对应公司《营业执照》,且营业执照中包含汽车租赁业务 | |
高速服务 | / | 仅支持 ETC 发行业务,(2选1): 1. 事业单位主体,需提供《事业单位法人证书》 2. 官方指定的发行单位(一发单位),需提供“官方授权或协议,或公开可查询的文件” | |
生活服务 | 生活缴费 | / | (供电类)提供《电力业务许可证》与《营业执照》,且《营业执照》经营范围含供电。(燃气类)提供《燃气经营许可证》与《营业执照》,且《营业执照》且经营范围含供气。(供水类)提供《卫生许可证》与《营业执照》。 |
IT 科技 | 基础电信运营商 | / | (2选1): 1. 基础电信运营商:提供《基础电信业务经营许可证》 2. 运营商分/子公司:提供营业执照(含相关业务范围) |
转售移动通信 | / | 仅支持虚拟运营商,提供《增值电信业务许可证》(业务种类需含通过转售方式提供移动通信业务) | |
旅游服务 | 住宿服务 | / | 仅支持酒店,提供《酒店业特种行业经营许可证》 |
商业服务 | 公证 | / | 仅支持公证处,提供《公证处执业许可证》 |
社交 | 直播 | / | (2选1): 1. 《信息网络传播视听节目许可证》 2. 《网络文化经营许可证》(经营范围含网络表演) |
没有以上资质,可以考虑在小程序中开发H5页面进行人脸核身
以数据宝人脸核身为例:
流程时序图
一、获取token
token获取地址: https://api5.chinadatapay.com/token/obtain (注意域名为:api5.chinadatapay.com)
请求⽅式:POST
请求参数:
参数名 | 是否必传 | 说明 |
appkey | 是 | 接⼝序列号,获取⽅式见下方“接⼝序列号appkey获取⽅式说明” |
name | 是 | 姓名 需要检测的⼈员姓名 |
idcard | 是 | 身份证号 需要检测的⼈员身份证号 |
响应参数:
参数名 | 说明 |
code | 响应编码,成功时返回0,详⻅“token接⼝响应编码表” |
msg | 错误信息 |
data | 返回数据,token |
success | true 成功 false 失败 |
ps:接⼝序列号appkey获取⽅式说明 进⼊我的API(也可以通过我的数据宝/获取ApiKey点击进入),找到购买的“实⼈⼀体化H5”或"活体检测+实⼈⼀ 体化H5尊享版"接⼝,接⼝名下⽅有⼀串随机字符串,这个字符串就是appkey
二、对接说明(小程序)
(1)成功申请接口
(2)设置业务域名
a. 在微信公众平台( https://mp.weixin.qq.com/)登陆小程序,在开发管理-业务域名中点击-开始配置
b. 在域名框中填写 https://h5live.chinadatapay.com (如提示绑定数量已达上限则换另外⼀个域名 https://h5livev1.chinadatapay.com),下载校验⽂件提交给数据宝对接⼈
(3)新建两个页面
a. H5显示页面 如:/page/livenessView/livenessView
b. H5回调⻚⾯ 如:/page/callPage/callPage
(4)小程序内调用接口获取数据宝token令牌,示例代码如下
wx.request({
url: 'https://api5.chinadatapay.com/token/obtain', // 参考⽂档1 获取token
dataType: 'json',
method: 'POST',
data: {
appkey: appKey //您的接⼝序列号
},
header: {
'content-type': 'application/x-www-form-urlencoded'
},
success(res) {
if (res.code==0) {
wx.setStorageSync('token', res.data);
wx.navigateTo({
url: '/page/livenessView/livenessView' // H5显示⻚⾯
})
}
})
(5)生成要跳转的h5链接
(h5链接参数详⻅“URL接⼝说明”),如: https://h5live.chinadatapay.com(如果 绑定的是另⼀个域名,请替换h5livev1.chinadatapay.com)/9901?token=获取的 token&backUrl=/page/callPage/callPage
(6)嵌⼊数据宝H5页面
示例代码如下:livenessView.wxml页面
<view class="page-body">
<web-view src="https://h5live.chinadatapay.com(如果绑定的是另⼀个域名,请替换
h5livev1.chinadatapay.com)/9901?token={{token}}&backUrl=/pages/callPage/callPage"></web
view>
</view>
(7)回调获取
示例代码如下: callPage.js
/**
* ⻚⾯的初始数据
*/
data: {
code:'',
message:'',
backImg:'',
//返回code
//返回message
//返回图⽚id
backVideo:'', //返回视频id
backNo:'',
//接⼝调⽤批次号
},
/**
* ⽣命周期函数--监听⻚⾯加载
*/
onLoad: function (options) {
var that = this;
/*获取参数*/
that.setData({
code:options.code,
message:options.message,
backImg:options.backImg,
backVideo:options.backVideo,
backNo:options.backNo,
})
},
三、解决逻辑
1. H5 页面隔离了小程序与人脸识别服务
数据宝的人脸识别服务通过跳转到 H5 页面 完成身份验证(活体检测和人脸核身),这意味着所有的识别过程都发生在 H5 环境中,而不是直接在小程序内调用 SDK 或接口。
• 腾讯的监控范围:腾讯仅能检测小程序直接调用的 API 或 SDK 请求,而嵌入的 H5 页面中的行为和接口调用不在其监控范围内。
• 数据流向:数据宝的服务在 H5 中处理,Token、请求数据等完全由数据宝的服务器管理,与腾讯无直接交互。
2. 业务域名合规性
微信小程序允许开发者配置业务域名,数据宝使用的域名(如 https://h5live.chinadatapay.com)是合法注册的,并通过了微信小程序的域名校验。
• 域名用途:腾讯只能检测域名是否在小程序的“业务域名”配置中,而无法进一步分析该域名内部的服务内容。
• 数据传输透明:由于域名是合法配置的,腾讯不会进一步审查这些域名具体提供了什么服务。
3. 身份验证通过 H5 回调处理
在数据宝的方案中,身份验证的结果通过 H5 页面回调给小程序,而腾讯无法深入追踪这个回调的来源。
• 回调逻辑:小程序只接收从 H5 页面返回的验证结果(如 Token、识别状态等)。
• 结果处理:腾讯无法得知这些结果是否来自腾讯自身的服务,或者是由第三方服务生成的。
4. 接口调用没有直接标识腾讯服务
在调用数据宝服务时,小程序请求的数据宝接口与腾讯的人脸核身接口无关。这些接口的 URL 和数据结构完全不同,腾讯无法通过接口调用记录追踪到数据宝服务的使用。
5. H5 页面完全由数据宝托管
数据宝的 H5 页面独立运行在其服务器上,所有的人脸识别和活体检测处理都在数据宝的后端完成。腾讯无法窥探 H5 页面内部的操作流程,也无法判断这些功能是否替代了其人脸核身服务。
这就进行了一系列的人脸核身功能,与公安数据库做比对
四、需要完整接口文档获取
需要了解完整接口文档,可以私信交流,可免费测试!!!