gpt4 book ai didi

Node.js 将文件上传到 Buffer 而不是/tmp

转载 作者:搜寻专家 更新时间:2023-10-31 22:47:50 29 4
gpt4 key购买 nike

在 Node.js 应用程序中,是否可以将文件 (multipart/form-data) 直接上传到服务器上的缓冲区而不是将文件保存到文件系统?

在伪代码中,您通常使用文件上传表单执行此操作

router.post('/upload', function(req, res, next){
// file is saved to /tmp/dk3idkalel4kidkek
// do some processing on the file
// manually save file to /www/myapp/uploads/originafilename.ext
});

是否可以跳过关于将文件保存到 /tmp 的部分,只将上传的文件捕获为 Buffer 并将其直接流式传输到目标目录?

例如,上传图像,然后优化图像,然后将其保存到预定目的地。您是否可以只捕获传入的流,对其进行优化然后保存,而无需初始保存到 /tmp 目录?

最佳答案

Multer 是一个用于处理 multipart/form-data 的 node.js 中间件,主要用于上传文件。内存存储引擎将文件作为 Buffer 对象存储在内存中。当使用内存存储时,文件信息将包含一个名为缓冲区的字段,该字段包含整个文件。

这应该完全符合您的需要。

您可以阅读更多 here

关于Node.js 将文件上传到 Buffer 而不是/tmp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34426299/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com