node koa2图片上传的实现

来源:互联网 发布:java数组转字符串 编辑:程序博客网 时间:2024/05/16 12:27

首先需要搭建koa2环境,这里就不多说了。

接下来需要加载koa-multer:

npm install koa-multer --save

具体代码如下:

首先是js部分:

const multer = require('koa-multer');//加载koa-multer模块//文件上传//配置var storage = multer.diskStorage({  //文件保存路径  destination: function (req, file, cb) {    cb(null, 'public/uploads/')  },  //修改文件名称  filename: function (req, file, cb) {    var fileFormat = (file.originalname).split(".");    cb(null,Date.now() + "." + fileFormat[fileFormat.length - 1]);  }})//加载配置var upload = multer({ storage: storage });//路由router.post('/upload', upload.single('file'), async (ctx, next) => {  ctx.body = {    filename: ctx.req.file.filename//返回文件名  }})
然后是html部分:

<!DOCTYPE html><html>  <head>      <meta charset="UTF-8">      <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">    <title>图片上传</title>    <script src="http://cdn.bootcss.com/jquery/2.0.0/jquery.min.js"></script></head>  <body>      <form action="http://127.0.0.1:3000/upload" method="post" enctype="multipart/form-data">        <input type="file" name="file"/>        <input type="submit" value="ok"/>    </form></body>  </html>

重要的:enctype="multipart/form-data"

ok完成。

测试:


上传成功。搞定