大家好,我在调用OCR名片功能时候,老是出现如下error:
{"code":14,"message":"sign no pass"}
想问一下如何解决?
附上代码如下:
var req = require('request');
var crypto = require('crypto');
var secretId = ' ',
secretKey = ' ',
appid = ' ',
pexpired = 86400,
userid = 0;
var now = parseInt(Date.now() / 1000),
rdm = parseInt(Math.random() * Math.pow(2, 32)),
plainText = 'a=' + appid + '&k=' + secretId + '&e=' + (now + pexpired) + '&t=' + now + '&r=' + rdm + userid + '&f=',
data = new Buffer(plainText, 'utf8'),
res = crypto.createHmac('sha1', secretKey).update(data).digest(),
bin = Buffer.concat([res, data]);
var sign = bin.toString('base64');
console.log('sign : ' + sign);
req.post({
url: 'http://recognition.image.myqcloud.com/ocr/businesscard' + '?appid=' + appid + '&bucket=test1&url_list=["http://yoututest-1251966477.cossh.myqcloud.com/mingpian.jpg"]',
headers: {
'content-type': 'application/json',
'Authorization': sign,
'host': 'recognition.image.myqcloud.com'
},
method: 'POST'
},
function(e, r, body) {
console.log(e);
console.log(body);
});
相似问题