我有这个路由,当我只给desk
密钥一切正常时,我可以上传我的图像,但当我使用storage
对象时,它不工作,也找不到路由,如果我使用storage
和app.use
,一切都正常。
我可以使用app.use
来处理这个问题,但我是express的新手,很好奇为什么它不起作用!!!
感谢您的帮助:(
router.route("/").post(
multer({
//dest: 'uploads/expense'
storage: multer.diskStorage({
destination: (req, file, next) => {
next(null, path.join(__dirname, '/uploads/expense'))
},
filename: (req, file, next) => {
next(null, file.fieldname +'-'+file.originalname)
}
})
}).single("image")
,
controller.insertData // calling my insert controller
)
问题是您在multer
的目的地中定义的path
本应在没有path.join()
:的情况下定义
router.route("/").post(
multer({
//dest: 'uploads/expense'
storage: multer.diskStorage({
destination: (req, file, next) => {
next(null,'uploads/expense') // HEREEE!
},
filename: (req, file, next) => {
next(null, file.fieldname +'-'+file.originalname)
}
})
}).single("image")
,
controller.insertData // calling my insert controller
)