Advertisement
Guest User

UPLOAD

a guest
Jun 25th, 2018
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*arquivo server.js*/
  2. var multer = require('multer')
  3.  
  4. // instancia um diskStorage  
  5. var storage = multer.diskStorage({
  6.   destination: function (req, file, cb) {
  7.     cb(null, 'public/temp/')
  8.   },
  9.   filename: function (req, file, cb) {
  10.     cb(null, file.fieldname + '-' + Date.now() + path.extname(file.originalname))
  11.   }
  12. })
  13.  
  14. funcao que faz upload
  15. var upload = multer({
  16.   storage: storage,//passa o storage
  17.   limits: { fileSize: 1000000 },
  18.   fileFilter: function (req, file, cb) {
  19.     if (!file.originalname.match(/\.(jpg|jpeg|png)$/)) {
  20.       return cb("Erro: Apenas arquivos do tipo  JPG e PNG são permitidos!");//erros customizados
  21.      
  22.     }
  23.     cb(null, true);
  24.   }
  25. }).single('avatar')//nome do input file // single pq é um upload único;
  26.  
  27.  
  28. //chamar a função upload na rota que deseja
  29. app.put('/account', (req, res, next) => {
  30.   upload(req, res, (err) => {
  31.     if (err) {
  32.       req.flash('error', { msg: multerHandlerErrors(err) });///err.Error    
  33.       return res.redirect('/account')
  34.     }
  35.     if (req.file) {
  36.       res.locals.nomeArquivo = req.file.filename;
  37.     } else {
  38.       res.locals.nomeArquivo = "";
  39.     }
  40.     next();
  41.   });
  42.  
  43. }, userController.ensureAuthenticated, userController.accountPut)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement