当我在onFileUploadStart()-NodeJs中包含逻辑时,Multer没有上传文件
Multer not uploading files when I include logic in onFileUploadStart() - NodeJs
我正试图使用multer只上传带有node的图像文件
文件的上传成功与此:
app.use(multer({
dest: __dirname + '/public/uploads/',
onFileUploadData: function (file, data) {
console.log(data.length + ' of ' + file.fieldname + ' arrived');
},
onFileUploadComplete: function (file) {
console.log(file.fieldname + ' uploaded to ' + file.path);
}
}));
但我想将其仅限于图像,并添加一些用户身份验证(下面的示例中还没有实现用户身份验证)。
当我启动包含onFileUploadStart的服务器时,它会登录到它上传的控制台,但当我检查上传文件夹时,什么都不存在。
app.use(multer({
dest: __dirname + '/public/uploads/',
onFileUploadStart: function (file) {
console.log(file.mimetype);
if (file.mimetype !== 'image/png' || file.mimetype !== 'image/jpg' || file.mimetype !== 'image/jpeg') {
return false;
} else {
console.log(file.fieldname + ' is starting ...');
}
},
onFileUploadData: function (file, data) {
console.log(data.length + ' of ' + file.fieldname + ' arrived');
},
onFileUploadComplete: function (file) {
console.log(file.fieldname + ' uploaded to ' + file.path);
}
}));
问题出在布尔逻辑上。
此:
if (file.mimetype !== 'image/png' || file.mimetype !== 'image/jpg' || file.mimetype !== 'image/jpeg')
应该是:
if (file.mimetype !== 'image/png' && file.mimetype !== 'image/jpg' && file.mimetype !== 'image/jpeg')
相关文章:
- NodeJS expressJS使用multer和passport将文件上传并保存到MongoDB
- Express.js和multer:如何知道文件何时全部上传
- 在multer中重命名上载的文件
- 使用 multer 上传文件,错误:意外字段
- 使用 multer (nodeJs) 上传文件不起作用
- 上传文件并使用 multer 传递附加参数
- Express Multer 文件上传 req.body 和 req.file 未定义
- 节点.js连接在使用 multer 上传文件时重置
- 如何在 Node.js 中使用 multer 将文件保存在项目文件夹中
- 单独文件中的Express中间件(multer)
- 使用multer上载多个文件失败
- Multer 使用数据创建新文件夹
- 当我在onFileUploadStart()-NodeJs中包含逻辑时,Multer没有上传文件
- 在Mongoose中使用Multer将文件存储到MongoDB中
- 在快速路由器内使用multer进行文件上传
- Multer上传文件+JSON对象
- 正在上载带有FormData和multer的文件
- Multer只将req.files中的一个文件写入数据库
- 使用multer上传文件不能完全工作(NodeJS)
- 无法运行node.js服务器在节点中使用express和multer上传文件