index.js
bindFace: function() {
let that = this;
let timestamp = Date.parse(new Date());
timestamp = timestamp / 1000;
// console.log("当前时间戳为:" + timestamp);
that.wecropper.getCropperImage((src) => {
if (src) {
wx.getFileSystemManager().readFile({
filePath: src, //选择图片返回的相对路径
encoding: 'base64', //编码格式
success: res => { //成功的回调
that.setData({
// userImageBase64: 'data:image/png;base64,' + res.data,
noHeadImageBase64: res.data,
})
},
complete:res=>{
if (that.data.noHeadImageBase64) {
wx.showLoading({
title: '识别中',
mask: true
});
let urlBase64 = encodeURIComponent(that.data.noHeadImageBase64);
let facedata = {
app_id: 'xxxxxx',
image: that.data.noHeadImageBase64,
mode: '0',
nonce_str: 'zzzzz',
time_stamp: timestamp,
app_key: 'aaaaaa'
}
let facedata2 = JSON.stringify(facedata);
let list = 'app_id=xxxxx&image=' + urlBase64 + '&mode=0' + '&nonce_str=zzzzz&time_stamp=' + timestamp + '&app_key=aaaaaa';
let encrypted = md5(list);
let encryptedUpper = encrypted.toUpperCase();
let finalfacedata = {
app_id: 'xxxxxx',
time_stamp: timestamp,
nonce_str: 'zzzzz',
image: that.data.noHeadImageBase64,
mode: '0',
sign: encryptedUpper,
app_key: 'aaaaaa'
}
let finalfacedata2 = JSON.stringify(finalfacedata)
wx.request({
url: 'https://api.ai.qq.com/fcgi-bin/face/face_detectface',
dataType: 'json',
method: 'POST',
header: {
'content-type': 'application/x-www-form-urlencoded'
},
data: finalfacedata,
success: function (res) {
wx.hideLoading();
if (res.data.ret == 0) {
//成功
} else {
wx.showModal({
title: '提示',
content: '识别失败',
showCancel: false
})
}
},
})
}
}
})
}
else
wx.showModal({
title: '提示',
content: '请上传图片',
showCancel: false
})
});
},
复制代码