一.准备工作
本文是实人认证H5的接入文档,用于指导WEB应用开发人员接入,并详细描述接入流程和使用方法,默认读者已经具有一定的编程知识基础。
注意事项
- app内嵌H5时,如果用户拒绝授权相机权限需要用户卸载重装app才能重新唤起授权弹框
- 当选择身份证二要素输入后会自动进入活体检测环节,当活体检测成功时才会进行人像比对
创建应用
- 开发者使用账号登录创蓝智能云平台 (www.chuanglan.com ),填写信息创建应用。
- 审核通过后,开发者可以在应用详情中获取到应用的appId和appKey,后续集成对接中会使用。
体验demo
- 我们提供了一个 web 页面的【demo示例】,通过示例可以体验H5版本的基本用法。
集成SDK
- 在页面中引入实人认证Web SDK的JS文件与CSS文件,以V2.0.2版本为例:
<script src="https://static2.253.com/wanshu/sdk/shiren/living2.0.2.min.js"></script>
二.实人认证API
0. 获取authToken
- 请查看服务端集成文档,调用获取授权Token(authToken)接口,获取authToken为后续步骤做准备。
1. 启动检测
【 方法调用说明 】
jmliving({ appKey: '***', authToken: '***' }, function (data) {
console.log('data', data);
});
【 参数说明 】
| 参数名称 | 参数类型 | 是否必填 | 参数描述 |
|---|
| appKey | String | 是 | 在 统一平台应用管理列表中查看 (对应appId) |
| authToken | String | 是 | 由后端获取authToken接口获得 |
| actionsCount | Number | 否 | 动作数量,枚举值:1,2,3 默认值:2 |
| state | Number | 否 | 认证流程 1、身份证 2、默认检测 3、自定义检测 6、身份证二要素 默认值:1 |
| okText | String | 否 | 默认值:"确定" |
| cancelText | String | 否 | 默认值:"取消" |
【 接入示例 】
当state传1时,先启动身份证照片上传页,再启动活体检测页,SDK最终返回base64编码后的身份证照片及活体检测结果,后续人像比对需要调用服务端接口
- 入参示例:
{
"state": 1,
"appKey": "WuH3...",
"authToken": "3712...",
"actionsCount": 1,
"cancelText": "取消认证",
"okText": "确定"
}
- 则对应调用流程如下:
-
流程说明:
- [ a ] 调用启动检测方法后,会打开身份证照片上传页面。
- [ b ] 上传身份证照片并提交后,启动活体检测页面(需要授予相机权限)
- [ c ] 按照提示完成指定动作后,返回活体检测结果,并返回base64编码后的身份证照片
- [ d ] 调用服务端身份证OCR接口提取身份证文字信息,再调用服务端人像比对接口,完成人像一致性比对。
-
返回示例:
{
"app_key": "WuH3...", // 应用密钥标识
"auth_token": "4910...", // 认证令牌authToken
"front_image": "/9j/4AAQ...", // 身份证人脸正面图像(Base64编码)
"back_image": "/9j/4AAQ...", // 身份证人脸背面图像(Base64编码)
"image_type": "BASE64", // 身份证图像编码类型
"idCard": "", // 身份证号(空)
"userName": "", // 身份证姓名(空)
"code": "200", // 响应码(成功)
"file": {}, // 文件信息(空)
"score": 0.6052959016827908, // 置信度分数
"message": "pass" // 活体检测状态消息(通过)
}
当state传2时,只进行录制/上传视频活体检测,SDK最终返回活体检测结果
当state传3时,只进行实时活体检测,SDK最终返回活体检测结果
{
"app_key": "WuH3...", // 应用密钥标识
"auth_token": "4910...", // 认证令牌authToken
"code": "200",// 响应码(成功)
"file": {}, // 文件信息(空)
"score": 0.6134156665267778,// 置信度分数
"message": "pass" // 活体检测状态消息(通过)
}
当state传6时,先启动身份证二要素填写页,再启动活体检测页面,SDK最终返回人像比对结果
-
流程说明:
- [ a ] 调用启动检测方法后,会打开身份证姓名、号码填写页面。
- [ b ] 填写完成确认后,启动活体检测页面(需要授予相机权限)
- [ c ] 按照提示完成指定动作后,返回人像一致性比对结果。
-
返回示例:
{
"app_key": "WuH3...",// 应用密钥标识
"auth_token": "C053...",// 认证令牌authToken
"idCard": "411...",// 身份证号
"userName": "张三",// 身份证姓名
"code": "201", // 响应码(成功)
"message": "成功", // 状态消息(通过)
"result": {
"score": "99",
"image": "/9j/4AAQ...",//活体检测截取的人脸照片
"match": "pass",// 状态消息(通过)
"desc": "比对成功" // 比对结果描述(通过)
}
}
三.返回码
| 状态码 | 状态描述 |
|---|
| 200 | 活体认证通过 |
| 201 | 人像对比通过 |
| 000500 | 参数错误 |
| 000510 | appKey 必填 |
| 000520 | authToken 必填 |
| 000600 | 动作获取失败 |
| 0006xx | 默认动作调用失败 |
| 0007xx | 自定义动作调用失败 |
| 000900 | 取消认证 |
| 000901 | 检测超时 |
| 000902 | 人像对比失败 |
| 000903 | 获取相机权限失败 |
没有更多了