1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
const express = require('express'); const multer = require('multer'); const path = require('path'); const getMsg = require('../getSendResult');
const router = express.Router();
const storage = multer.diskStorage({ destination: function(req, file, cb) { const distName = path.resolve(__dirname, '../../public/upload'); cb(null, distName) }, filename: function(req, file, cb) { const filename = Date.now() + '-xyqihsz' + path.extname(file.originalname); cb(null, filename) } })
function fileFilter(req, file, cb) { const whiteList = ['.jpg', '.png', '.jpeg', '.gif']; if (whiteList.includes(path.extname(file.originalname))) { cb(null, true); } else { cb(new Error(`you upload file extname '${path.extname(file.originalname)}' is not support!`)) } }
const upload = multer({ storage, limits: { fileSize: 150 * 1024, }, fileFilter })
router.post('/', upload.single('img'), (req, res) => { res.send(getMsg.getResult({ url: 'upload/' + req.file.filename, })) })
module.exports = router;
|