2017-02-25 62 views
0

我正尝试上传一张带有快递和多功能的图片。下面是我用它来上传图片的形式:已上传的图片不适用于多人

<form action="/uploadProfilePicture" method="POST" id="form-upload-profile-picture"> 
    <div class="row center"> 
     <div class="row"> 
      <input type="file" name="uploadProfilePicture" id="add-friend-search-input"> 
     </div> 
     <div class="row"> 
      <button class="button-green-large" class="u-full-width" id="add-friend-search-submit">Upload</button> 
     </div> 
    </form> 

这里是我的后端:

var mkdirp   = require("mkdirp"), 
    multer   = require("multer"); 

// MULTER CONFIGURATION 
    var storage = multer.diskStorage({ 
    destination: function (req, file, cb) { 
     //var code = JSON.parse(req.body.model).empCode; 
     var dest = "/public/images"; 
     mkdirp(dest, function (err) { 
      console.log(dest); 
      if (err) cb(err, dest); 
      else cb(null, dest); 
     }); 
    }, 
    filename: function (req, file, cb) { 
     cb(null, Date.now()+'-'+file.originalname); 
    } 
}); 

// POST ROUTE: Upload profile picture 
app.post("/uploadProfilePicture", upload.any(), function(req, res) { 
    console.log(req.body); 
    res.send(req.files); 
}); 

但是,每当我上传的图片,它不会出现在/公/图像。我的代码有什么问题?非常感谢!

回答

2

enctype="multipart/form-data"在您的html表单标记中缺失。没有这个,它会将你的表单发布为application/x-www-form-urlencoded,它不包含任何文件数据。