节点JS Multer文件上传与额外的文本输入字段(Node js Multer file uplo

2019-10-29 13:40发布

我想上传使用multer一个文件到磁盘。 这里是我的代码:

 const multer  = require('multer');


var storage = multer.diskStorage({
    destination: (req, file, cb) => {
      cb(null, __basedir + '/uploads/')
    },
    filename: (req, file, cb) => {
      cb(null, file.fieldname + "-" + Date.now() + "-" + file.originalname)
    }
});


var upload = multer({storage: storage});

在这里,我去的形式收集文件和一些额外的输入字段

<form  method="post" enctype="multipart/form-data" action="/uploadfile">
<input name="cate" type="hidden" value="<%= category %>" id="cate" name="cate"></input>
<br>
<input type="file" name="uploadfile"  class="btn-success" value="Select Source">
        <input  type="submit" class="btn-success"  ><i class="fas fa-plus"></i> Add a new Source</input>

此功能上传的公共/ IMG / bg.jpg到我的数据库,你我想由用户挑选的文件。 我怎样才能在req.files对象中的文件路径字符串

fs.createReadStream('public/img/bg.jpg')
  .pipe(fileUpload.createWriteStream())
  .on('error', function(err) {
console.log("fail");})
  .on('finish', function() {
    console.log("success");
  });
  });
文章来源: Node js Multer file upload with extra text input fields