multer-req.file未定义

时间:2020-06-19 20:07:20

标签: javascript node.js express multer

我正在使用Node,Express和multer创建用于上传图像的应用。我提交了表单,但是req.file是未定义的。我花了一整天的时间进行故障排除,但无法找出问题所在。

表格

  <form method="get" action="/upload" enctype="multipart/form-data">
    <div id="upload_div"><input type="file" name="imgFile" id="image_input" accept="image/*" onchange="readURL(input)"></div>
    <div id="upload_div"><input type="text" name="name" id="name" title="Name" placeholder="Name"></div>
    <div id="upload_div"><input type="submit" value="Upload"></div>
  </form>

ROUTER

...
const multer = require('multer')
var upload = multer({ dset: '/images' });
...
router.post('/upload_processing', upload.single('imgFile'), function(req, res, next){
  console.log(req.files); // result : undefiend
  console.log(req.file);  // result : undefiend
  console.log(req.body);  // result : {imgFile:"test.png", name:"test"}
  res.send(req.body);
});

1 个答案:

答案 0 :(得分:0)

我认为您提供的名称和下面使用的名称存在问题。 尝试这样的事情,可能会对您有帮助

router.post('/upload', upload.single('file'),function (req, res){  
    res.json({file: req.file})
    res.redirect('/');
})