Advertisement
Guest User

Untitled

a guest
May 7th, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const express = require('express');
  2. const router = express.Router();
  3. const jwt = require('jsonwebtoken');
  4. const fs = require('fs');
  5. // const keys = require('../../config/keys');
  6. const auth = require('../../middleware/auth');
  7.  
  8. const users = JSON.parse(fs.readFileSync('./data/users.json'));
  9. const keys = JSON.parse(fs.readFileSync('./config/keys.json'));
  10.  
  11. // @route   POST usuarios/login
  12. // @desc    Autenticar usuario y generar token
  13. // @access  Public
  14. router.post('/login', (req, res) => {
  15.     const {username, password} = req.body;
  16.  
  17.     try {
  18.         // Checar si existe el usuario
  19.         if (!users.find(user => user.username === username)) {
  20.             return res.status(400).json({errors: [{msg: 'Invalid Credentials'}]});
  21.         }
  22.  
  23.         // Checar contraseña
  24.         if (!users.find(user => user.password === password)) {
  25.             return res.status(400).json({errors: [{msg: 'Invalid Credentials'}]});
  26.         }
  27.  
  28.         // Se agrega payload
  29.         const payload = {
  30.         };
  31.  
  32.         // Expira en 5 minutos
  33.         jwt.sign(
  34.             payload,
  35.             keys.jwtSecret,
  36.             {expiresIn: 300},
  37.             (err, token) => {
  38.                 if (err) throw err;
  39.                 res.json({token});
  40.             });
  41.  
  42.     } catch (e) {
  43.         console.error(e.message);
  44.         res.status(500).send('Server error');
  45.     }
  46. });
  47.  
  48. // @route   POST usuarios/logout
  49. // @desc    Changes jwyKey
  50. // @access  Public
  51. router.post('/logout', auth, (req, res) => {
  52.     console.log(keys.jwtSecret);
  53.     keys.jwtSecret = 'EODKOEKDdawdawdIJDiajWIDJIAWJDaijdOK';
  54.     res.status(200).send('User logout');
  55.     console.log(keys.jwtSecret);
  56. });
  57.  
  58.  
  59.  
  60. module.exports = router;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement