Как отправить данные изображения приложения/октета-пара в Microsoft Face API в Node.js?

Я хочу отправить двоичные данные Octet-Stream в Microsoft Face API в Nodejs. У меня есть данные изображения в кодировке base64. Я хочу отправить его в Face API. Я использую следующий код:

var dataURItoBuffer = function (dataURL, callback) {
    var buff = new Buffer(dataURL.replace(/^data:image\/(png|gif|jpeg);base64,/, ''), 'base64');
    callback(buff);
};

var sendImageToMicrosoftDetectEndPoint = function (imageData, callback) {
    console.log('Entered helper');
    dataURItoBuffer(imageData, function (buff) {
        request.post({
            url: keyConfig.microsoftDetectURL,
            headers: {
                'Content-Type': 'application/octet-stream',
                'Ocp-Apim-Subscription-Key': keyConfig.microsoftApiKey
            },
            data: buff
        }, function (err, httpResponse, body) {
            console.log(body);
        });
    })
}

Но это дает мне такой ответ:

{
  "error": {
     "code":"InvalidImageSize",
     "message":"Image size is too small."
   }
}

person Aman Dwivedi    schedule 07.04.2018    source источник
comment
Если вы боретесь с этим, посмотрите stackoverflow.com/a/58854505/2627126.   -  person Jay Lim    schedule 14.11.2019


Ответы (1)


Вместо

request.post({
    data: buff
}

Do

request.post({
    body: buff
}
person Maria Ines Parnisari    schedule 07.04.2018