当我上传图像时使用 multer 它会显示一条消息,表明图像已成功添加但未添加到上传文件夹
Using multer when I upload an image it shows me a message that image has been successfully added but does not added to upload folder
Here's my code to upload and save image in database , when I do this
on postman it gives an error of 'undefined' but 'file uploaded
successfully' and neither did my image/file is stored in upload folder
//多文件
const multer = require('multer');
const storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, 'originalname');
},
filename: (req, file, cb) => {
cb(null, new Date().toISOString().replace(/:/g, '-') + '-' + file.originalname);
}
});
const filefilter = (req, file, cb) => {
if (file.mimetype === 'image/png' || file.mimetype === 'image/jpg'
|| file.mimetype === 'image/jpeg'){
cb(null, true);
}else {
cb(null, false);
}
}
const upload = multer({storage: storage, fileFilter: filefilter});
module.exports = {upload}
//图像数据模型
const mongoose=require('mongoose');
const imageSchema=new mongoose.Schema({
fileName: {
type: String,
required: true
},
filePath: {
type: String,
required: true
},
fileType: {
type: String,
required: true
},
fileSize: {
type: String,
required: true
}
}, {timestamps: true});
module.exports=mongoose.model('imagedata', imageSchema);
//post控制器
exports.uploadimage = async (req, res, next) => {
try{
const file= req.file;
console.log(file);
res.status(201).json({messsage:"file uploaded successfully"})
}catch(error){
res.status(400).send(error.message)
}
你没有指定你想要保存文件的目的地
在您的项目中创建一个名为 uploads 的文件夹,并按照我在下面提到的进行更改:
destination: (req, file, cb) => {
cb(null, 'uploads/originalname');
},
Here's my code to upload and save image in database , when I do this on postman it gives an error of 'undefined' but 'file uploaded successfully' and neither did my image/file is stored in upload folder
//多文件
const multer = require('multer');
const storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, 'originalname');
},
filename: (req, file, cb) => {
cb(null, new Date().toISOString().replace(/:/g, '-') + '-' + file.originalname);
}
});
const filefilter = (req, file, cb) => {
if (file.mimetype === 'image/png' || file.mimetype === 'image/jpg'
|| file.mimetype === 'image/jpeg'){
cb(null, true);
}else {
cb(null, false);
}
}
const upload = multer({storage: storage, fileFilter: filefilter});
module.exports = {upload}
//图像数据模型
const mongoose=require('mongoose');
const imageSchema=new mongoose.Schema({
fileName: {
type: String,
required: true
},
filePath: {
type: String,
required: true
},
fileType: {
type: String,
required: true
},
fileSize: {
type: String,
required: true
}
}, {timestamps: true});
module.exports=mongoose.model('imagedata', imageSchema);
//post控制器
exports.uploadimage = async (req, res, next) => {
try{
const file= req.file;
console.log(file);
res.status(201).json({messsage:"file uploaded successfully"})
}catch(error){
res.status(400).send(error.message)
}
你没有指定你想要保存文件的目的地 在您的项目中创建一个名为 uploads 的文件夹,并按照我在下面提到的进行更改:
destination: (req, file, cb) => {
cb(null, 'uploads/originalname');
},