Skip to content

Creating template for login autentication, using node.js, JWT with design partners mvc

License

Notifications You must be signed in to change notification settings

albertferreira2020/MVC-Login-JWT-Template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MVC-Login-JWT-Template

Creating template for login autentication, using node.js, JWT with protocol HTTPS and certified, using design partners mvc

const compression = require('compression')
const express = require('express')
const path = require('path')
const Router = require('./src/routes/routes.route')
var bodyParser = require('body-parser');
const app = express();

const fs = require('fs');
const https = require('https');
const options = {
  key  : fs.readFileSync('certified/private.key'),
  cert : fs.readFileSync('certified/certificate.crt')
};

app.use(bodyParser.urlencoded({extended: true}));
app.use(bodyParser.json());
app.use(Router);
 
app.use(function(req, res, next) {
  res.header('Access-Control-Allow-Origin', "*");
  res.header('Access-Control-Allow-Methods','GET,PUT,POST,DELETE');
  res.header('Access-Control-Allow-Headers', 'Content-Type');
  next();
});  
  
app.use(compression());
app.disable('x-powered-by');
app.use(express.static(path.join(__dirname, 'src/views')));

 https.createServer(options, app).listen(5002, function () {
  console.log('Server is running 5002..');
 })
 
 
 ///////////////////////////////// route file ////////////////////////////////

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

const token = require('../middleware/token.middleware');
const index = require('../controllers/index.controller')
const login = require('../controllers/login.controller')
const logout = require('../controllers/logout.controller')
const main = require('../controllers/main.controller')
const validate = require('../controllers/validate.controller')
const message = require('../controllers/message.controller')
const clients = require('../controllers/clients.controller')
const savemodels = require('../controllers/savemodels.controller')
const getmodels = require('../controllers/getmodels.controller')
const sendmails = require('../controllers/sendmails.controller')
const descriptions = require('../controllers/descriptions.controller')
const saveobs = require('../controllers/saveobs.controller')
const history = require('../controllers/history.controller')

router.get('/', index.get) 
router.post('/login', login.post)  
router.get('/logout', logout.get)
router.get('/main', main.get)
router.post('/validate',token, validate.post)
router.get('/message', message.get)
router.post('/clients',token, clients.post)
router.post('/savemodels',token, savemodels.post)
router.post('/getmodels',token, getmodels.post)
router.post('/sendmails',token, sendmails.post)
router.post('/descriptions',token, descriptions.post)
router.post('/saveobs',token, saveobs.post)
router.post('/history',token, history.post)


module.exports = router;
 
///////////////////////////////// middleware token file ////////////////////////////////
const jwt = require('jsonwebtoken');

function token (req, res, next) {
  
    var token = req.body.token 
    
    if (!token) return res.status(200).send(`alert('Erro: token não encontrado');top.location.href='/'`);
    jwt.verify(token, 'stringsecret', function(err, decoded) {
      if (err) return res.status(200).send(`alert('token Expirado');top.location.href='/'`);
      req.userId = decoded.id;
      next();
    });
    

}

module.exports = token;

About

Creating template for login autentication, using node.js, JWT with design partners mvc

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published