javascript - 在 Node.JS 中上传文件

标签 javascript node.js express stream

我正在使用 multiparty用于上传文件;我对 Node.JS 和流媒体很陌生;所以我的问题是,如果我通过在 form.parse() 中返回的 file.path 流式传输文件是否正确,就像我在我尝试的代码中所做的那样?我的意思是这是绝对路径,显然是在 localhost 上工作,因为它是我当前服务器(即 localhost)的绝对路径,但是当用户也尝试从他们的计算机上传文件时它会工作吗?

form.parse(req, function (err, fields, files) {
    var rs= fs.createReadStream(files.file[0].path);
    var fileDate;
    rs.on('readable', function () {
        while (null !== (chunk = rs.read())) {
            fileDate += chunk;
        }
    });

    rs.on('end', function () {
        console.log('importedData', fileDate);
    });
});

谢谢,如果您需要更多说明,请告诉我!

最佳答案

看起来是正确的。默认情况下,上传的文件放在一个临时文件夹中,如果您使用的是 Linux,这可能是/tmp,当他们通过您的前端上传他们的文件时,您的用户的文件最终会放在同一个地方。

关于javascript - 在 Node.JS 中上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28004759/

相关文章:

node.js - req.session undefined with Redis/Express

javascript - 如何将一些东西附加到javascript变量

javascript - 使用 Electron (Atom Shell) 时的客户端/服务器模型是什么?

javascript - 尝试获取数据时 GraphQL 中的空值

使用 Express 时未加载 Javascript(Angular)

node.js - 添加中间件以检查 API key 和密码

javascript - 在选项卡式模式对话框(覆盖)中创建菜单

JavaScript FetchAPI 给出未定义的结果,认为我需要移动 fetch 调用函数但不确定在哪里

javascript - 从 JSON 中获取特定对象

javascript - 尝试通过 Angular 服务 POST 请求时出现错误请求 404