我有一些像这样的代码:
var readImage = function(snapshot) {
var s = new cv.ImageDataStream()
var p = new Promise(function(resolve, reject) {
s.on("load", function(matrix) {
resolve(matrix);
});
})
snapshot.pipe(s);
return p;
};
其中cv
为节点开放。不幸的是,它调用了一些c++,如果它接收到的数据是空的或无效的,它就会失败。它只是爆炸(没有异常处理)。是否有一种方法可以解决snapshot
流到缓冲区或其他东西,检查它的内容,然后将其转换回流并管道回cv
?
我相信如果你正在监听流上的错误,它不会引发异常,而是调用你的回调。
尝试……
s.on('error', function(e) {
// handle e
})
…防止抛出异常