koa-multer用法基本和multer一致,npm里koa-multer的用法介绍比较简单,可以参考multer的用法
const Koa = require('koa'); const Router = require('koa-router'); const multer = require('koa-multer'); const path = require('path'); const server = new Koa(); let storage = multer.diskStorage({ destination: path.resolve('upload'), filename: (ctx, file, cb)=>{ cb(null, file.originalname); } }); let fileFilter = (ctx, file ,cb)=>{ //过滤上传的后缀为txt的文件 if (file.originalname.split('.').splice(-1) == 'txt'){ cb(null, false); }else { cb(null, true); } } let upload = multer({ storage: storage, fileFilter: fileFilter }); let router = new Router(); router.post('/upload', upload.single('file'), async ctx => { if (ctx.req.file){ ctx.body = 'upload success'; } else { ctx.body = 'upload error'; } }); server.use(router.routes()); server.listen(8080, ()=>{ console.log('usage: curl http://localhost:8080/upload -F "file=@1.jpg"'); });