哔哩哔哩教程:nodejs下文件上传功能实现

node.js 文件上传

安装模块

  1. multer // 文件上传
  2. fs // 文件处理

核心代码

var express = require('express');
var router = express.Router();

const multer = require('multer')
const fs = require('fs')

/* GET home page. */
router.get('/', function (req, res, next) {
  res.send({
    success: true
  })
});

router.post('/upload', multer({
  dest: 'upload'
}).single('file'), (req, res) => {
  console.log(req.file);
  fs.renameSync(req.file.path, `upload/${req.file.originalname}`)
  res.send(req.file)
})

router.post('/upload', multer({
  dest: 'upload'
}).array('file', 10), (req, res) => {
  const files = req.file
  const fileList = {}
  for (var i in files) {
    var file = files[i]
    fs.renameSync(file.path, `upload/${file.originalname}`)
    file.path = `upload/${file.originalname}`
    fileList.push(file)
  }
  res.send(fileList)
})

router.get('/download', (req, res) => {
  req.query.url ? res.download(`upload/${req.query.url}`) : res.send({
    success: false
  })
})

module.exports = router;

前往作者哔哩哔哩查看教学视频

posted @ 2020-02-07 15:21  南风S  阅读(200)  评论(0)    收藏  举报