1
我想创建一个node.js程序,它通过http POST接受一个文件并将它写入到mongodb中。为了减少内存使用量,我使用req.on('data')以块的形式接收数据。用node.js流文件到mongodb
问题是,无论我如何处理这个问题,我都无法理解数据事件在mongo写入文档之前被解雇的事实。
这是我一直试图做的事:
- 后接收到的连接,创造蒙戈文件存储从蒙戈的_id。
- 然后每个数据事件将更新文档(使用_id)
- 当收到结束事件时,我会更新文档设置一些完整的标志。
但是,在mongo在步骤1中返回之前,数据事件开始被触发。
有没有正确的方法来做到这一点?我宁愿不必诉诸写文件。
谢谢, Kev。
嗨,谢谢你的建议。我刚刚尝试过,但不幸的是,它似乎没有任何区别,数据事件仍然被解雇。我不知道这是一个错误还是我做错了什么。也许暂停停止流,但第一个数据块与头一起发送? – YorkshireKev
看起来暂停已经在节点版本7中修正/修改,所以希望它会在下一个稳定版本中发布。谷歌搜索我觉得它不会被支持6.x。 – YorkshireKev