1. 简要描述
- 目标小程序跳转到人脸小程序,完成人脸识别;
- 通过人脸识别,完成个人身份的校验;
- 比对的照片库为公安一所的校验库;




2. 使用前须知
- 此插件服务由学谷智能提供,须在官网注册获取商户号才能使用;
https://plugin.shargoodata.com
3. 获取 Token 的接口
功能:提供服务端和前端两种获取token方式,建议服务端获取更安全;
服务端获取方法:
简要描述:
请求URL:
接口地址:https://gauss.shargoodata.com/gauss/authorization/token.json
请求方式:POST
数据类型:x-www-form-urlencoded
请求参数:
参数名 |
是否必须 |
类型 |
说明 |
platformNo |
是 |
string |
商户号 |
secretKey |
是 |
string |
密钥 |
expiresIn |
是 |
long |
token有效期,单位(秒),建议设置不超过300(5分钟),定时轮换token;最大限制2592000(30天) |
响应结果:
参数名 |
类型 |
说明 |
success |
boolean |
是否成功获取到token,true:成功,false:失败; |
data |
string |
token |
error_code |
string |
错误代码 |
message |
string |
描述 |
附:小程序前端调用方法(供参考):
wx.request({
url: 'https://gauss.shargoodata.com/gauss/authorization/token.json',
data: {
platformNo: '*****',
secretKey: '*****'
},
dataType: 'JSON',
method: 'POST',
header: {
'content-type': 'application/x-www-form-urlencoded'
},
success: function(res) {
console.log(res)
}
})
接口返回结果实例:
{
data: "" // 返回的token
outside_no: null
success: true
}
4. 支付宝跳转api
const uuid;
my.navigateToMiniProgram({
appId: '2021003157626188',
path: 'pages/source/index?id=' + uuid,
extraData: {
params: aseEncryptParams(JSON.stringify(data), uuid)
},
success(res) {
})
data输入信息
字段 |
类型 |
说明 |
必填 |
备注 |
token |
string |
token |
是 |
|
platformNo |
string |
商户号 |
是 |
|
orderNo |
string |
订单号 |
是 |
|
type |
string |
产品类型 |
否 |
living(默认) / identity / idCard |
extraInfo |
object |
人脸核身 |
否 |
携带姓名以及身份证信息 |
extendData |
object |
扩展表 |
否 |
|
extraInfo
字段 |
类型 |
说明 |
必填 |
备注 |
idName |
string |
姓名 |
是 |
人脸核身服务必传 |
idNumber |
string |
身份证 |
是 |
人脸核身服务必传 |
返回信息
字段 |
类型 |
说明 |
data |
object |
code,filePath,msg |
success |
boolean |
是否成功 |
加密库
import CryptoJS from 'crypto-js';
export function aseEncryptParams(word: json, key: string) {
const wordUTF8 = CryptoJS.enc.Utf8.parse(word);
const keyUTF8 = CryptoJS.enc.Utf8.parse(key);
const encrypted = CryptoJS.AES.encrypt(wordUTF8, keyUTF8, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7,
});
return encrypted.toString();
}
export function aesDecryptParams(encryptedWord: string, key: string) {
const keyUTF8 = CryptoJS.enc.Utf8.parse(key);
const bytes = CryptoJS.AES.decrypt(encryptedWord, keyUTF8, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7,
});
return JSON.parse(bytes.toString(CryptoJS.enc.Utf8))
}
Demo
import CryptoJS from 'crypto-js';
Page({
data: {
token: ""
},
onLoad() {
this.init()
},
init() {
const that = this
my.request({
url: 'https://gauss.shargoodata.com/gauss/authorization/token.json',
data: {
platformNo: "xxx",
secretKey: "xxx"
},
dataType: 'JSON',
method: 'POST',
header: {
'content-type': 'application/x-www-form-urlencoded'
},
success: function(res) {
that.setData({
token: JSON.parse(res.data).data
})
}
})
},
handleToProgram() {
const uuid = "xxx"
const data = {
token: this.data.token,
platformNo: "xxx",
orderNo: "xxx",
type: "identity",
extraInfo: {
idName: "原则",
idNumber: "327462199901122356"
},
extendData: {
a: 1,
b: 2
}
}
my.navigateToMiniProgram({
appId: '2021003157626188',
path: 'pages/source/index?id=' + uuid,
extraData: {
params: this.aseEncryptParams(JSON.stringify(data), uuid)
},
success(res) {
console.log(res)
}
})
},
aseEncryptParams(word, key) {
const wordUTF8 = CryptoJS.enc.Utf8.parse(word);
const keyUTF8 = CryptoJS.enc.Utf8.parse(key);
const encrypted = CryptoJS.AES.encrypt(wordUTF8, keyUTF8, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7,
});
return encrypted.toString();
}
})
5. 查询接口:“人脸核身”处理结果的后端查询
功能:给需要安全性要求高的,希望通过服务端查询人脸核身结果的商户使用;
请求URL:
接口地址:https:
请求方式:POST
数据类型:x-www-form-urlencoded
表头:
参数名 |
类型 |
默认值 |
是否必填 |
说明 |
token |
String |
无 |
是 |
token |
表体:
参数名 |
类型 |
默认值 |
是否必填 |
说明 |
platformNo |
String |
无 |
是 |
商户号 |
body |
String |
无 |
是 |
订单号,与前文的orderNo相同 |
返回信息
字段 |
类型 |
说明 |
success |
boolean |
true代表执行成功,扣费;false代表执行不成功,不扣费 |
data |
object |
code,msg,image(base64形式,人脸照片) |
success为true时,code取值说明
code码 |
说明 |
200 |
验证通过 |
405 |
照片不匹配 |
404 |
库中无此号 |
403 |
相片质量校验不合格 |
406 |
身份证号与姓名不匹配 |
401 |
活体验证不通过 |
400 |
无效的参数 |
402 |
无效的证件 |
500 |
输入图片无法处理 |
success为false时,error_code报错码枚举:
6. 联系客服:
- 微信:

文档更新时间: 2025-04-27 11:33 作者:admin