Koa2中上传图片模块koa-multer的使用(可立即加载照片)

avatar
作者
筋斗云
阅读量:5

要在Koa2中使用koa-multer模块进行图片上传,首先需要安装koa-multer模块:

npm install koa-multer 

接下来,在Koa2的入口文件中引入koa-multer模块:

const multer = require('koa-multer'); 

然后,创建一个用于上传图片的multer实例,并指定图片上传的目标路径和文件命名规则:

const storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, 'uploads/')  // 指定上传的目标路径 }, filename: function (req, file, cb) { const extname = path.extname(file.originalname); cb(null, file.fieldname + '-' + Date.now() + extname);  // 指定文件命名规则 } }); const upload = multer({ storage: storage }); 

在路由中定义一个用于处理图片上传的接口,并使用multer实例的upload.single()方法指定上传的文件字段名:

router.post('/upload', upload.single('image'), async (ctx) => { // 图片上传成功后的处理逻辑 // 可以通过ctx.req.file获取上传的文件信息 ctx.body = '图片上传成功'; }); 

最后,将路由挂载到Koa2应用中:

app.use(router.routes()).use(router.allowedMethods()); 

现在,当客户端向/upload接口发送POST请求,并在请求中包含名为image的文件字段,koa-multer将会将上传的图片保存到指定的目标路径,并将上传成功的消息返回给客户端。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!