流式传输通过gm用Express.js上传的文件,以消除重复写入

流式传输通过gm用Express.js上传的文件,以消除重复写入,第1张

流式传输通过gm用Express.js上传的文件,以消除重复写入

通过重写,您将走上正确的道路

form.onPart
。默认情况下,强大的写入磁盘 *** 作,因此您需要先执行 *** 作。

零件本身就是流,因此您可以将它们通过管道传递到所需的任何位置,包括

gm
。我没有测试过,但这根据文档是有道理的:

var form = new formidable.IncomingForm;form.onPart = function (part) {  if (!part.filename) return this.handlePart(part);  gm(part).resize(200, 200).stream(function (err, stdout, stderr) {    stdout.pipe(fs.createWriteStream('my/new/path/to/img.png'));  });};

至于中间件,我会

multipart
从Connect / Express
复制粘贴中间件并将
onPart
功能添加到中间件:http
:
//www.senchalabs.org/connect/multipart.html


如果

formidable
默认情况下不写入磁盘或带有标志,那会更好很多,不是吗?您可以向他们发送问题。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/4904177.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存