koa文件上传中间件——koa-multer


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"');
});

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM