在 Express 中,可以使用 Multer 中间件来处理文件上传,示例如下:

  1. 安装 Multer
npm install multer --save
  1. 引入 Multer
const multer = require('multer')
  1. 配置 Multer
const storage = multer.diskStorage({
  destination: function (req, file, cb) {
    // 指定文件上传的目录
    cb(null, 'uploads/')
  },
  filename: function (req, file, cb) {
    // 指定文件名
    cb(null, file.originalname)
  }
})

const upload = multer({ storage: storage })
  1. 定义文件上传接口
app.post('/upload', upload.single('file'), function (req, res, next) {
  // req.file 是上传的文件信息
  console.log(req.file)
  res.send('文件上传成功')
})
  1. 在前端使用 form 表单上传文件
<form action="/upload" method="POST" enctype="multipart/form-data">
  <input type="file" name="file">
  <button type="submit">上传文件</button>
</form>

注意事项:

  • 在 form 表单中需要指定 enctype 为 multipart/form-data
  • 在 Multer 中使用 single 方法指定上传的文件名,这里的名字需要和前端 form 表单中的文件名一致
Node.js Express 文件上传接口实现

原文地址: https://www.cveoy.top/t/topic/n4Of 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录