Я пытаюсь использовать multer для сохранения изображения на моем сервере, а точнее, в папке public/images/servers
. К сожалению, я получаю сообщение об ошибке:
[Error: ENOENT: no such file or directory, open 'C:\MAMP\htdocs\Chat Backend\public\images\servers\2020-08-07T12:33:31.556Z-aohan-chen-.jpg'] {
errno: -4058,
code: 'ENOENT',
syscall: 'open',
path: 'C:\\MAMP\\htdocs\\Chat Backend\\public\\images\\servers\\2020-08-07T12:33:31.556Z-aohan-chen-.jpg',
storageErrors: []
}
Я не уверен, почему там написано, что нет такого файла или каталога, когда все до этого существует - 'C:\MAMP\htdocs\Chat Backend\public\images\servers'
. Осталось только Multer сохранить изображение в папке серверов.
var multer = require('multer');
var storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, 'public/images/servers')
},
filename: (req, file, cb) => {
cb(null, new Date().toISOString() + '-' + file.originalname)
}
})
var fileFilter = (req, file, cb) => {
if (file.mimetype === 'image/png' || file.mimetype === 'image/jpg' || file.mimetype === 'image/jpeg') {
cb(null, true)
} else {
cb(null, false)
}
}
app.use(multer({ storage: storage, fileFilter: fileFilter }).single('image'));