Express 学习 - 04-中间件应用-文件上传

64 阅读1分钟

如果想往服务器上传文件,我们可以使用 multer 安装

npm install multer 

使用

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

const app = express()
const upalod = multer({
    dest: "./uploads" // 存放文件夹
})

app.post('/update', upalod.single('avator'), (req, res, next) => {
    console.log(req.file)
    res.end("上传成功")
})

app.listen(9000, () => {
    console.log(`服务器启动成功`)
})

如果想要上传多文件,则可以使用 multer.array('photos')

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

const app = express()

const upload = multer({
    // dest: "./uploads"
    storage: multer.diskStorage({
        destination(req, file, callback) {
            callback(null, './uploads')
        },
        filename(req, file, callback) {
            callback(null, Date.now() + '_' + file.originalname)
        }
    })
})

app.post('/avatar', upload.single('avatar'), (req, res, next) => {
    console.log(req.file)
    res.end('文件上传成功~')
})

app.post('/photos', upload.array('photos'), (req, res, next) => {
    console.log(req.file)
    res.end("多张照片上传成功")
})

app.listen(9000, () => {
    console.log(`服务器启动成功`)
})