在nodejs项目中使用multer
安装插件:npm i multer
//前端使用elementui 的upload上传图片
//后端nodejs使用multer处理
1.__dirname : 绝对路径
2.uploadFolder:保存上传文件的文件夹
3.upload.single(‘file’):支持单个文件上传
//在项目router子路由中使用(index.js):
const multer= require('multer');
const upload = multer({dist:__dirname+'/../../uploadFolder'})
router.post('/upload', upload.single('file'), async (req, res) => {
const file = req.file;
file.url = `http://localhost:3000/uploadFolder/${file.filename}`//图片地址,前端展示
res.send(file);
});
在:**http://localhost:3000/uploadFolder/${file.filename}**中,我们通过地址访问项目中的文件夹可能会访问不到,因为在nodejs中,访问文件都是需要路由的,所以需要托管一下这个静态文件夹uploadFolder:
//在nodejs项目文中的根index.js中写入静态路由:
就可以访问uploadFolder文件夹,拿文件了。
个人学习笔记,仅供参考。
来自哔哩哔哩up博主:@全栈之巅