使用 node.js 上传图像文件


通常,会在请求处理程序之外定义中间件,然后将其用作一个或多个请求处理程序的中间件。

const imgMulterMiddleware = multer({
storage: multer.diskStorage({
destination: (req, file, cb) => {
cb(null, "./Uploads")
},
filename: (req, file, cb) => {

cb(null, Date.now().toString() + '-' + file.originalname)

},
fileFilter: (req, file, cb) => {
const extensionImg = ['image/png', 'image/jpg', 'image/jpeg'].find
(formatPermitted => formatPermitted == file.mimetype)

if(extensionImg){
return cb(null, true)
}
return cb(null, false)
}

})

}).single('image');

然后,根据需要使用该中间件:

routes.post('/uploads', imgMulterMiddleware, (req, res) => {
// do something with req.file here which will be set
// by the middleware if it was successful

if (req.file) {
res.json({erro: false, message: "ok"});
} else {
res.status(400).json({erro: true, message: "error"});
}
});


发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注