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