multer简单使用

边永贞
2023-12-01

node中multer包的使用

//这样可以保留导入图片的文件名
const storage = multer.diskStorage({    
    destination:'./uploads',
    filename(req,file,cb){
    cb(null,Date.now() + extname(file.originalname))
    }
})
const uploader = multer({
    storage,
     // 通过这个方法,可以对上传的文件进行过滤,只允许接收指定的文件类型
    fileFilter(req,file,cb){
        console.log(extname(file.originalname),'hhh')
        const ename = extname(file.originalname)
        if(['.jpg','.png'].includes(ename)){
            cb(null,true)
        }else{
            cb(new Error('只能接受.jpg和.png后缀的图片'))
        }
    }
})
//开放成静态资源以及使用
app.use('/uploads',express.static(path.join(__dirname,'./uploads')))

app.post('/uploads',uploader.single('img'),(req,res)=>{
    console.log(req.body)
    console.log('-----------')
    console.log(req.file)
    res.send({
        message:ok
    })
})

 类似资料: