Javascript 穆特没有';看不到上传的图片
我想在单个post请求中保存一个图像,这将是用户对MongoDB的化身,以及使用npm中名为multer的包的一些用户信息。不幸的是,我只能在控制台中看到错误:Javascript 穆特没有';看不到上传的图片,javascript,node.js,mongodb,express,multer,Javascript,Node.js,Mongodb,Express,Multer,我想在单个post请求中保存一个图像,这将是用户对MongoDB的化身,以及使用npm中名为multer的包的一些用户信息。不幸的是,我只能在控制台中看到错误: TypeError:无法读取未定义的属性“path” register.pug 注册路由 我的代码有什么问题?我认为您缺少此属性 enctype="multipart/form-data" 以你的形式,试试看 嗯,花了一段时间,但我找到了原因,你需要给你的文件加一个扩展名。我会把代码放在这里 这是我的html文件,我在我的应用程序中使
TypeError:无法读取未定义的属性“path”
register.pug
注册路由
我的代码有什么问题?我认为您缺少此属性
enctype="multipart/form-data"
以你的形式,试试看 嗯,花了一段时间,但我找到了原因,你需要给你的文件加一个扩展名。我会把代码放在这里 这是我的html文件,我在我的应用程序中使用
ejs
模块,而不是jade
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form accept="image/x-png,image/gif,image/jpeg" enctype="multipart/form-data" action="/profile" method="post">
<input type="file" name="avatar" value="">
<input type="submit" name="" value="ssss">
</form>
</body>
</html>
你能把它调好吗@罗伯马克斯
enctype="multipart/form-data"
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form accept="image/x-png,image/gif,image/jpeg" enctype="multipart/form-data" action="/profile" method="post">
<input type="file" name="avatar" value="">
<input type="submit" name="" value="ssss">
</form>
</body>
</html>
var express = require('express')
var multer = require('multer')
var app = express()
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, __dirname + '/uploads') //you tell where to upload the files,
},
filename: function (req, file, cb) {
cb(null, file.fieldname + '-' + Date.now() + '.png')
}
})
var upload = multer({storage: storage,
onFileUploadStart: function (file) {
console.log(file.originalname + ' is starting ...')
},
});
app.set('view engine', 'ejs');
app.get('/', function(req, res, next){
res.render('mult'); //our html document
})
app.post('/profile', upload.single('avatar'), function (req, res, next) {
// req.file is the `avatar` file
console.log(req.file);
return false;
})