我注意到Cognitive Services套件中的Emotion API出现了一个奇怪的错误。
只要我发送URL,一切正常。发送图像附件时。我收到此JSON错误:
Running setup.py bdist_wheel for pygame ... error
发送更小或更大的版本无济于事。 发送相同图片的网址,然后它会再次正常工作。
我将附件流式传输到API服务的方式与我为另一个Cognitive Services API(即计算机视觉)完全相同。这对于流式附件非常有用。
代码在GitHub上:https://github.com/sebsylvester/botbuilder-mcs
我知道API仍在预览中,但这仍然是一个奇怪的问题。
答案 0 :(得分:2)
不幸的是,Emotion和Face API不支持分块传输,如here所述。 '解决方法'是在发出Web请求之前同步加载图像位。因此,该项目的代码snippet是:
function _postImageSync(url, image, options) {
return new _Promise(function (resolve, reject) {
request.post({
uri: host + rootPath + url,
headers: {
'Ocp-Apim-Subscription-Key': key,
'Content-Type': 'application/octet-stream'
},
qs: options,
body: fs.readFileSync(image)
}, (error, response) => {
response.body = JSON.parse(response.body);
_return(error, response, resolve, reject);
});
});
}