因此,我已经使用Multer和Multer-Gridfs-Storage成功地将映像文件下载到了MongoDB,但是检索时遇到了麻烦。
[当我尝试使用GridFS-Stream检索数据时,它像以前的问题一样返回:GridFS : How to display the result of readstream.pipe(res) in an <img/> tag?
当我使用此代码时,发送到前端的只是集合中的第一个块,但实际上是可用的。
const readstream = gfs.createReadStream({ filename: files[0].filename });
readstream.on('data', (chunk) => {
res.send({ image: chunk.toString('base64') })
})
我如何能够取回所有块?我应该放弃并开始使用GridFSBucket吗?
我最终尝试了此方法,并且有效!
let data = ''
readstream.on('data', (chunk) => {
data += chunk.toString('base64')
})
readstream.on('end', () => {
res.send(data)
})