我如何在Express中使用express-fileupload?

时间:2019-01-28 08:54:47

标签: javascript node.js express

我想通过提取发送文件,但是我需要通过express-fileupload在服务器端获取文件,

我的服务器端: 在这里,我只是使用express-fileupload获取文件,但是我正在通过表单操作发送,我需要获取,但是我不知道如何通过获取来发送文件,所以我可以通过req.files

来获取。
async store(req, res) {
    var doce = req.body.doce;
    var nome = uniqid(doce+'-')+'.jpg';
    var caminho = `/img/${doce}/`;
    var tema = req.body.tema;
    let sampleFile = req.files.arquivo;
    sampleFile.mv(`./public${caminho}${nome}`, function(err){
        if(err){
            return res.status(500).send(err)
        }
    });
    const candy = await Candy.create({
        nome: nome,
        doce: doce,
        caminho: caminho,
        tema: tema
    });

    return res.json(candy);
},

我的提取: 在这里,我尝试通过body发送,但是在服务器端使用fileupload我无法使用body恢复文件,只能通过文件恢复

let file = document.querySelector('input[name="arquivo"]').files[0] 

fetch('http://localhost:3000/candy', { method: 'post', headers: {'x-auth-token': window.sessionStorage.getItem('token'), 'Content-Type': 'application/json'}, body: JSON.stringify({
    doce: doce,
    tema: document.getElementById('docestipos').value,
    arquivo: file
})}).then...

0 个答案:

没有答案