主题
1.使用须知
WebRTC 兼容性支持列表
在 iOS 14.3 及以上版本,WKWebView 增加了对 WebRTC 的支持。因此,微信、第三方浏览器和 App 需要在 IOS 14.3 及以上版本上才能支持 WebRTC 功能。对于第三方 iOS 端 App,若未使用 WKWebView,则需查看所用的 WebView 是否支持 WebRTC 功能来确定是否支持 WebRTC。
客户端 Android 版本 iOS 版本 Edge/Chrome/QQ Android 8.1 及以上版本大部分支持, 8.1 以下部分支持 iOS 14.3 及以上版本 Safari 浏览器 不支持 iOS 11 及以上版本 UC Android 9.0 及以上版本 不支持 UC 极速浏览器 不支持 不支持 厂商内置浏览器 大部分机器支持等部分机型支持, 如三星,华为,oppo,vivo, 小米 无 微信(App) Android 9.0 及以上版本 iOS 14.3 及以上版本 App Android 9.0 及以上版本且使用的 WebView 支持 WebRTC iOS 14.3 及以上版本且使用 IOS 自带 WKWebView
2.接入流程
2.1 获取 H5 实时活体 URL 与认证单据号
通过活体人脸核身 或活体人脸比对 获取 h5Url 与单据号。
2.2 打开 web 地址
window.location.href=`${h5Url}${h5Url.includes('?') ? '&': '?'}redirectUrl=${encodeURIComponent(redirectUrl)}&certifyId=${certifyId}&token=${token}`h5Url: 初始化返回 H5 实时活体地址。
redirectUrl: 接收 H5 实时活体返回信息地址,需要用 encodeURIComponent 进行编码。
certifyId: 活体认证唯一单据号。
token: 通过接口认证获取必要的 token 信息。
认证结果接收
js
`${callbackUrl}?response={code:'${code}',certifyId:'${certifyId}'}`;说明: response 的内容是 JSON 序列化后并 encodeURIComponent 后的值, 使用时先 decodeURIComponent, 后 JSON.parse 解析后使用。
打开 h5Url 以后,认证结束会通过打开传递的 redirectUrl 参数进行跳转。
2.3 拿到回调结果,通过服务端再次确认结果
| 错误码 code | 描述 |
|---|---|
| 00000000 | 刷脸完成,实际结果需要通过活体人脸核身-获取认证结果 或 活体人脸比对-获取认证结果进行结果查询 |
| 80002900 | 初始化失败 |
| 80002901 | 单据号不能为空 |
| 80002902 | 回调地址不能为空 |
| 80002903 | 单据号不存在或已过期 |
| 80002904 | 回调地址有误 |
| 80002905 | 初始化异常:资源用完 |
| 80002908 | 单据号已使用,请勿重复初始化 |
| 80002910 | 单个动作超过认证时长 |
| 80002915 | 活体检测失败 |
| 00006232 | 刷脸未完成 |
| 00009800 | 摄像头权限拒绝 |
| 00009801 | 初始化摄像头打开失败 |
| 00009803 | 缺少输入参数 |
| 00009807 | 网络错误 |
| 00009809 | API 请求错误 |
| 00009811 | 动作超时 |
| 00009812 | 鉴权过期 |
| 00009814 | 动作验证失败,检测到攻击 |
| 00009817 | 获取方案配置出错 |
2.问题反馈
反馈问题时请附加页面截图/视频、请求入参回参等关键信息。