所以我在运行一个 node .带mongoose的js服务器,我一直在try download a large file using the GridFS node package,但我得到了以下错误:
MongoServerError:find命令::期间的执行器错误由::Sort引起,超出了104857600字节的内存限制,但未 Select 外部排序.
以下是我用来下载文件的代码:
// Stream a single file.
router.get('/stream/:filename', async function(req, res, next){
try{
const file = gfs.find({
filename: req.params.filename
}).toArray((err, files) => {
if (!files || files.length === 0) {
return res.status(404)
.json({
err: "no files exist"
});
}
gfs.openDownloadStreamByName(req.params.filename)
.pipe(res);
});
}catch(err){
return res.status(400).json({
err:'Could not fetch the file.'
})
}
});
考虑到这it's OK to answer your own question on StackOverflow个问题,我想记录下这个问题,以便我的解决方案可以帮助以后遇到它的其他人.