# 腾讯云人脸核身(FACEID)插件
# 1. 插件介绍
标题 | 名称 |
---|---|
中文名称 | 腾讯云人脸核身(FACEID)插件 |
英文名称 | tencentcloud-plugin-faceid |
最新版本 | v1.0.0 (2021.01.11) |
适用平台 | DCloud uni-app (opens new window) |
适用产品 | 腾讯云慧眼人脸核身 (opens new window) |
GitHub项目 | tencentcloud-uniapp-plugin-faceid (opens new window) |
gitee项目 | tencentcloud-uniapp-plugin-faceid (opens new window) |
Demo项目 | tencentcloud-uniapp-plugin-example (opens new window) |
主创团队 | 腾讯云中小企业产品中心(SMB Product Center of Tencent Cloud) |
兼容平台 | H5、小程序、APP |
一款帮助开发者在uni-app项目开发中快捷使用腾讯云慧眼人脸核身产品功能的插件。
# 2. 功能特性
- 活体人脸核身(微信小程序)
- 活体人脸比对(微信小程序)
- 照片人脸核身
- 身份证人像照片验真
- 身份证识别及信息核验
# 3. 安装指引
本插件需要调用uniCloud云函数,而使用云函数的前提是:
- 使用DCloud官方开发工具HBuilderX 2.7+;
- 已注册DCloud开发者账号并通过实名认证;
- 开通了uniCloud并创建一个腾讯云的服务空间;
# 3.1. 新建或打开已有项目
- 打开HBuilderX开发工具;
- 新建或打开一个uni-app项目;
# 3.2. 导入云函数
- 访问 DCloud 插件市场的 腾讯云插件 - 云函数模板 (opens new window) 详情页;
- 点击详情页右上角 使用 HBuilderX 导入插件,将云函数模板导入到您的项目中;
- 在项目中打开 cloudfunctions/tencentcloud-plugin/config.js 文件,将腾讯云的密钥信息配置进去,可以在腾讯云 API 密钥管理 (opens new window) 中获取 SecretId、SecretKey 和 APPID;
- 在uniCloud控制台 (opens new window)注册HBuild账号并登录,创建云服务空间 (opens new window);
- 在项目中打开 _cloudfunctions/tencentcloud-plugin/faceid/config.js 文件,将region配置进去,具体可参考地域列表 (opens new window);
- 绑定云函数的云服务空间,将云函数 (opens new window) 上传部署 (opens new window) 到您的云服务空间 (opens new window);
如果您之前在使用其它腾讯云产品的 uni-app 插件时已经导入过此云函数模板,则前 4 个步骤可以省略。
若导入失败或有其它疑问,请查看 uniCloud帮助文档 (opens new window) 云函数相关章节。
# 3.3. 导入插件
- 访问DCloud插件市场 腾讯云人脸核身(FACEID)插件 (opens new window) 详情页;
- 点击详情页右上角 使用HBuilderX导入插件 ,将插件导入到您的项目中;
- 在项目中通过 import 语法将插件提供的方法导入到相关业务组件并使用;
本插件的默认导入位置是在您项目的“js_sdk”目录下
# 4. 使用指引
# 4.1. 插件API导图
# 4.2. 插件API列表
API名称 | API对应方法名 |
---|---|
活体人脸核身 | livenessRecognition |
活体人脸比对 | livenessCompare |
照片人脸核身 | imageRecognition |
获取数字验证码 | getLiveCode |
获取动作顺序 | getActionSequence |
身份证人像照片验真 | checkIdCardInformation |
身份证识别及信息核验 | idCardOCRVerification |
# 4.3. 插件使用示例
// 人脸核身-活体人脸核身使用示例
// 从js_sdk列表中导入需要的api
import { livenessRecognition } from "@/js_sdk/tencentcloud-plugin-faceid";
import chooseVideo2Base64 from '@/js_sdk/tencentcloud-plugin-faceid/choose-video-2base64.js';
export default {
data() {
return {
status: false,
idCard: '430421**********10',
name: '张三',
detectResult: ''
};
},
methods: {
// 开始检测
async startDetect() {
try {
const videoBase64 = await chooseVideo2Base64();
this.status = true;
this.detectResult = '';
uni.showLoading({
mask: true
});
const params = {
idCard: this.idCard,
name: this.name,
videoBase64,
livenessType: 'SILENT'
};
this.detectResult = await livenessRecognition(params);
} catch (error) {
uni.showToast({
icon: 'none',
title: error.message
});
} finally {
this.status = false;
uni.hideLoading();
}
}
}
};
# 4.4 主要API 说明
# livenessRecognition(params) ⇒ Promise.<object>
Returns: Promise.<object>
- result 活体人脸核身结果
Param | Type | Required | Description |
---|---|---|---|
params | object | true | 活体人脸核身配置参数 |
params.idCard | string | true | 身份证号 |
params.name | string | true | 姓名。中文请使用UTF-8编码 |
params.videoBase64 | string | true | 用于活体检测的视频,视频的BASE64值;BASE64编码后的大小不超过8M,支持mp4、avi、flv格式 |
params.livenessType | string | true | 活体检测类型,取值:LIP/ACTION/SILENT。LIP为数字模式,ACTION为动作模式,SILENT为静默模式,三种模式选择一种传入 |
params.validateData | string | false | 数字模式传参:数字验证码(1234),需先调用接口获取数字验证码;动作模式传参:传动作顺序(2,1 or 1,2),需先调用接口获取动作顺序;静默模式传参:空 |
params.optional | string | false | 额外配置,传入JSON字符串 |
# 4.5. 名词解释
服务空间:一个服务空间对应一整套独立的云开发资源,包括数据库、存储空间、云函数等资源。服务空间之间彼此隔离。更多详情请访问 uniCloud开发文档 (opens new window)
云函数:云函数是运行在云端的JavaScript代码,更多详情请见 uniCloud云函数文档 (opens new window)
# 5. 获取入口
插件入口 | 链接 |
---|---|
DCloud插件市场 | 腾讯云人脸核身(FACEID)插件 (opens new window) |
# 6. FAQ
Q:有没有demo示例?
A:请查看demo示例tencentcloud-uniapp-plugin-example (opens new window)
Q:活体人脸核身和活体人脸比对功能支持H5和APP吗?
A:不支持,目前这两个功能只支持微信小程序
# 7. GitHub版本迭代记录
# 7.1. tencentcloud-uniapp-plugin-tmt v1.0.0
- 活体人脸核身(微信小程序)
- 活体人脸比对(微信小程序)
- 照片人脸核身
- 身份证人像照片验真
- 身份证识别及信息核验
# 8. 联系我们
如果您是用户,欢迎加入我们的官方交流社区 (opens new window),反馈
- bug和故障,获取帮助。
- 新的插件功能需求。
- 新的开源应用插件适配需求。
如果您是开发者,欢迎参与我们插件开源项目 (opens new window),和我们一起修复插件问题,为更多开源应用适配腾讯云插件。