【问题标题】:Multiple File Uploads from Node Client to Node Server从节点客户端到节点服务器的多个文件上传
【发布时间】:2020-09-08 06:50:15
【问题描述】:

您好,我正在运行一个带有 multer 的节点服务器来上传多个文件。

const multer = require('multer');
const app = express();

const upload = multer({dest:'uploads/'});

const SERVER_PORT = 8080;

app.listen(SERVER_PORT,()=>{
    console.log("Server listening")
})

app.post('/upload/bak', upload.array('file'), (req,res)=>{
    console.log(JSON.stringify(req.files[0]))
    // console.log("Files uploaded: " + req.files.reduce((prev,current)=>{
    //     console.log(JSON.stringify(prev))
    // }))

    res.end(JSON.stringify({
        status:"complete"
    }));

})

现在我可以使用postman 使用form-data post 请求并选择多个文件来发布多个文件(存储在系统上)。

我在这里尝试完成的是使用另一个节点应用程序来完成它(最好使用axiosstreams,这样如果文件很大,它们就不会占用所有内存)。

如何将多个流放入formdata 并发布,以便上面的应用程序能够处理它?

请帮忙!

【问题讨论】:

    标签: javascript node.js axios


    【解决方案1】:

    您可以使用 FORMDATA 上传。

        const formData = new FormData();
    
        formData.append('avatar',file)
    
        return  await axios.post(this.UPLOAD_ENDPOINT, formData,{
            headers: {
                'content-type': 'multipart/form-data'
            }
        });
    

    阅读更多:https://www.techiediaries.com/react-formdata-file-upload-multipart-form-tutorial/

    【讨论】:

    • 谢谢哈维,但是我正在尝试通过节点应用程序上传文件。如何获取“文件”变量?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-09
    • 2016-10-29
    • 1970-01-01
    • 2016-06-20
    • 2019-11-18
    • 1970-01-01
    相关资源
    最近更新 更多