天天看点

express使用multer实现文件上传功能express使用multer实现文件上传功能

express使用multer实现文件上传功能

在express框架中想要实现文件上传功能,可以使用multer中间件,该文章教大家具体怎么配置和使用
  1. 使用之前首先安装

    multer

npm install multer --save
           
  1. 在定义路由前引入
const multer = require('multer')
           
  1. 设置 dest 属性(设置上传文件后保存的位置)
const upload = multer({dest: __dirname + '/../../uploads'})
           
  1. 在路由中间件使用它
app.post('/admin/api/upload', upload.single('file'), async (req, res) => {
    const file = req.file
    // 因为原本multer没有返回完整的文件链接,所以我们这里把完整的文件链接拼接返回
    file.url = `http://localhost:3000/uploads/${file.filename}`
    res.send(file)
  })
           
  1. 要想前端通过链接能访问到该文件,需要在express的index里配置
app.use('/uploads', express.static(__dirname + '/uploads'))
           
  1. 完整代码

upload路由中

express使用multer实现文件上传功能express使用multer实现文件上传功能

express的index中

express使用multer实现文件上传功能express使用multer实现文件上传功能

最后大功告成,实现我们想要的功能

继续阅读