0

要求:正在处理图像文件上传。在这里,使用 express 和 node.js。使用 busboy 包在文件中接收二进制数据。

我的问题是如何从文件接收二进制数据到本地变量以插入 mongo db。

var binaryData = "";

var busboy = new Busboy({ headers: req.headers });
busboy.on('file', function(fieldname, file, filename, encoding, mimetype) {
  console.log('File [' + fieldname + ']: filename: ' + filename + ', encoding: ' + encoding + ', mimetype: ' + mimetype);
  file.pipe(/********want to receive binary data to binaryData************/); 
});

如何将二进制数据放入 binaryData 变量?

接收文件内容以直接在 mongodb(不是 gridfs)上写入的任何替代方法。

谢谢你。

4

1 回答 1

1

您可以通过管道传输到任何可写流,或者如果您想自己处理数据(出于缓冲目的或其他目的),您可以使用“数据”和“结束”事件或使用file.read()“可读”事件从溪流。流中的数据file通常是二进制的,但您必须检查encoding和/或mimetype确定。

于 2014-09-15T01:57:06.627 回答