Guest User

Untitled

a guest
Jul 8th, 2018
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.86 KB | None | 0 0
  1. const express = require('express');
  2. const app = express();
  3. const passport = require('passport');
  4. const LocalStrategy = require('passport-local').Strategy;
  5. const flash = require('connect-flash');
  6. const bodyParser = require("body-parser");
  7. const cookieSession = require('cookie-session');
  8. const {
  9. Router
  10. } = require('express');
  11.  
  12. const session = require('express-session')
  13.  
  14.  
  15. app.use(express.static("public"));
  16. app.use(cookieSession({
  17. name: 'MyAppName',
  18. keys: ['very secret key'],
  19. maxAge: 30 * 24 * 60 * 60 * 1000 // 30 days
  20. }));
  21. app.use(bodyParser.urlencoded({
  22. extended: false
  23. }));
  24. app.use(passport.initialize());
  25. app.use(passport.session());
  26. app.use(flash())
  27. // app.use(router)
  28.  
  29. passport.serializeUser(function (user, done) {
  30. done(null, user);
  31. });
  32.  
  33. passport.deserializeUser(function (user, done) {
  34. done(null, user);
  35. });
  36.  
  37.  
  38. passport.use(new LocalStrategy(
  39. function (username, password, done) {
  40. if (username == 'cuong' && password == 'cuong') {
  41. return done(null, {
  42. name: 'cuong'
  43. });
  44. } else {
  45. return done(null, false, {
  46. message: 'Incorrect username or password'
  47. })
  48. }
  49. }
  50. ));
  51.  
  52. app.get('/login',(req, res)=> res.send('please login'));
  53.  
  54. app.post('/login',
  55. passport.authenticate('local', {
  56. successRedirect: '/info',
  57. failureRedirect: '/login',
  58. failureFlash: true
  59. })
  60. );
  61.  
  62.  
  63. app.get('/info', isLoggedIn, (req, res) => res.send({
  64. name: 'cuong'
  65. }));
  66.  
  67.  
  68.  
  69. app.get('/logout', function (req, res) {
  70. req.logout();
  71. res.redirect('/login');
  72. });
  73.  
  74. function isLoggedIn(req, res, next) {
  75.  
  76. // if user is authenticated in the session, carry on
  77. if (req.isAuthenticated())
  78. return next();
  79.  
  80. // if they aren't redirect them to the home page
  81. res.redirect('/login');
  82. }
  83.  
  84.  
  85. app.listen(3000, () => console.log('server listening on port 3000'));
Add Comment
Please, Sign In to add comment