如何在不使用表单或不使用Ajax输入文件的情况下将文件上传到node.js服务器文件夹?

时间:2019-06-18 09:06:34

标签: node.js ajax file-upload

我试图记录.wav文件并将其从客户端发送到我的node.js服务器文件夹。我得到了.wav文件的链接,并将其显示在客户端浏览器上。我想将.wav文件上传到服务器而不使用Ajax。 我正在使用node.js进行表达。

我试图将音频的网址发送为类似{http://localhost:3000/b10cef8d-24ba-4503-b96c-92ebd23fc4a5),然后尝试将文件复制到服务器文件夹。

$.ajax({
    url: '/upload',
    method: 'POST',
    data: JSON.stringify({
    aLink: audioLink    }),   //audioLink is link to my recorded audio on clients side
    success: function (response) {
    console.log(response);}
})

服务器端

    app.post('/upload',function(req,res){
    var alink = req.body.name;


    if (Object.keys(alink).length == 0) {
        return res.status(400).send('Audio is not submitted');
    }

    // The name of the input field (i.e. "sampleFile") is used to retrieve the uploaded file
    let sampleFile = alink;

    // Use the mv() method to place the file somewhere on your server
    sampleFile.mv(path.join(__dirname ,'audios/test123.wav'), function(err) {
    if (err)
        return res.status(500).send(err);

        res.send('File uploaded!');
    });

})

我希望.wav文件存储在我的/ audios文件夹中。

0 个答案:

没有答案