前端用接口调试工具上传,后端使用nodejs的Koa2
后端部分:
const Koa = require('koa');
const Router = require('koa-router');
const multer = require('@koa/multer');
const storage = multer.diskStorage({ // multer调用diskStorage可控制磁盘存储引擎
destination: function(req, file, cb){
cb(null, './image/pic')
},
filename: function(req, file, cb){
cb(null, Date.now()+'.png') // 加入时间戳保证文件不重复
}
})
const limits = {
fileSize: 1024*1024*100,//文件大小 单位 b
files: 1//文件数量
}
const upload = multer({
storage,
limits
})
const app = new Koa();
const router = new Router();
router.get('/', async ctx => {
ctx.body = 'Hello World';
});
//此处upload.single('file')的file是文件名,就是前端上传时参数的名称
router.post('/upload', upload.single('file'),async ctx => {
ctx.body = 'success';
});
app.use(router.routes());
app.listen(2000);
注释:
a.后端安装插件命令
//安装koa
npm i koa
//安装上传文件的插件multer
npm install --save @koa/multer multer
b.插件仅支持multipart/form-data,所以格式一定要用这个才行
以上就是借鉴其他大佬,加上自己理解的价值的信息,希望对你有帮助,当然如果后端不使用koa2,选择express框架也可以,安装插件的话就直接 npm i multer,具体的可以去npm官网搜索对应的插件明即可!