上传的图像不适用于 multer
Uploaded image not working with multer
我正在尝试使用 express 和 multer 上传图片。这是我用来上传图片的表格:
<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);
});
但是,每当我上传图片时,它都不会出现在 /public/images 中。我的代码有什么问题?非常感谢!
enctype="multipart/form-data"
在您的 html 表单标签中缺失。否则,它将 post 您的表单作为 application/x-www-form-urlencoded,其中将不包含任何文件数据。
我正在尝试使用 express 和 multer 上传图片。这是我用来上传图片的表格:
<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);
});
但是,每当我上传图片时,它都不会出现在 /public/images 中。我的代码有什么问题?非常感谢!
enctype="multipart/form-data"
在您的 html 表单标签中缺失。否则,它将 post 您的表单作为 application/x-www-form-urlencoded,其中将不包含任何文件数据。