Skip to content

Instantly share code, notes, and snippets.

@hoc081098
Created July 20, 2018 11:26
Show Gist options
  • Save hoc081098/5d92fcb1af06047ac8eb9aa1ebec76a2 to your computer and use it in GitHub Desktop.
Save hoc081098/5d92fcb1af06047ac8eb9aa1ebec76a2 to your computer and use it in GitHub Desktop.
const express = require('express');
const multer = require('multer');
const app = express();
const router = express.Router();
const path = require('path');
const Storage = multer.diskStorage({
destination: './public/images',
filename: (req, file, cb) => {
const fileName =
file.originalname.split('.')[0] +
'-' +
Date.now() +
path.extname(file.originalname);
cb(null, fileName);
}
});
const upload = multer({
limits: 10 * 1024 * 1024,
storage: Storage
}).single('image');
router.get('/', (req, res) => {
res.end('GET');
});
router.post('/upload', (req, res) => {
upload(req, res, err => {
if (err) {
return res.status(500).json({ message: err.message });
}
const p = req.file.path
.split(path.sep)
.slice(1)
.join('/');
res.status(200).json({ path: p });
});
});
app.use(require('morgan')('combined'));
app.use(express.static(__dirname + '/public'));
app.use('/', router);
app.listen(3000, () => console.log('Listening at port 3000'));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment