安装
npm install koa-body 测试版本:6.0.1
用法
HTML: <form action="/form1" method="post" enctype="multipart/form-data"> <input type="text" name="name" /> <input type="file" name="file1"/> <input type="file" name="file2"/> <input type="submit" value="提交" /> </form> JS后台: const koabody = require("koa-body").default; const fs = require('fs'); const koa = require("koa"); const app = new koa(); //设置koa-body参数 app.use(koabody({ //其它设置参考最后面 multipart: true, //允许文件表单 jsonLimit: "5mb", // body体的大小 formidable: { maxFileSize: 100 * 1024 * 1024 // 设置上传文件大小最大限制,默认2M } })); app.use(async ctx => { if(ctx.method == "POST" && ctx.path == "/form1"){ // ctx.request.body //获取text表单,{ name: 'abc' } //------------------------------------------ //加载了koa-body中间件,才有files属性 var file = ctx.request.files.file1; //获取file文件,最后的file是HTML中<input name="file"/>属性,根据设置修改 var rfile = fs.createReadStream(file.filepath); //读取上传文件,转化为文件流 var wfile = fs.createWriteStream(__dirname + "/upload/" + file.originalFilename); // 写入文件,创建写入流 rfile.pipe(wfile); //保存文件 //上传文件信息 //file.filepath 上传文件临时路径 //file.originalFilename 文件名,a.txt //file.size 文件大小 //file.mimetype 文件类型,text/plain、application/x-zip-compressed //lastModifiedDate 上传时间 } });koa-body
