Advertisement
Guest User

nJs Express

a guest
Aug 16th, 2014
301
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ----------------------------------------------------------------
  2.     app.js
  3. ----------------------------------------------------------------
  4.  
  5. var express = require('express');
  6. var path = require('path');
  7. var favicon = require('static-favicon');
  8. var logger = require('morgan');
  9. var cookieParser = require('cookie-parser');
  10. var bodyParser = require('body-parser');
  11. var lessMiddleware = require('less-middleware');
  12. var passport = require('passport');
  13. var LocalStrategy = require('passport-local').Strategy;
  14. var expressSession = require('express-session');
  15.  
  16. var app = express();
  17.  
  18. // View engine setup
  19. app.set('views', path.join(__dirname, 'views'));
  20. app.set('view engine', 'jade');
  21. app.use(favicon());
  22. app.use(logger('dev'));
  23. app.use(bodyParser.json());
  24. app.use(bodyParser.urlencoded());
  25. app.use(cookieParser());
  26. app.use(lessMiddleware(
  27.     path.join(__dirname + "/less"),
  28.     {
  29.     dest: path.join(__dirname, "/public/"),
  30.     prefix: "/css"
  31.     }
  32. ));
  33. app.use(express.static(path.join(__dirname, '/public')));
  34. app.use(expressSession({
  35.     secret: 'secret',
  36.     resave: false,
  37.     saveUninitialized: false
  38. }));
  39. app.use(passport.initialize());
  40. app.use(passport.session());
  41.  
  42.  
  43. passport.use(new LocalStrategy(function(username, password, done) {
  44.     console.log(username + ":" + password);
  45.     if (username === password) {
  46.     done(null, { id: username, name: username });
  47.     } else {
  48.         done(null, null);
  49.     }
  50. }));
  51.  
  52. passport.serializeUser(function(user, done) {
  53.     done(null, user.id);
  54. });
  55.  
  56. passport.deserializeUser(function(id, done) {
  57.     done(null, { id: id, name: id, age: '23' });
  58. });
  59.  
  60. // Routes
  61. var main = require('./routes/main');
  62. var account = require('./routes/account');
  63.  
  64. app.use('/', main);
  65. app.use('/user', account);
  66.  
  67. /// catch 404 and forward to error handler
  68. app.use(function(req, res, next) {
  69.     var err = new Error('Not Found');
  70.  
  71.     err.status = 404;
  72.     next(err);
  73. });
  74.  
  75. /// error handlers
  76.  
  77. // development error handler
  78. // will print stacktrace
  79. if (app.get('env') === 'development') {
  80.     app.use(function(err, req, res, next) {
  81.         res.status(err.status || 500);
  82.         res.render('error', {
  83.             message: err.message,
  84.             error: err
  85.         });
  86.     });
  87. }
  88.  
  89. // production error handler
  90. // no stacktraces leaked to user
  91. app.use(function(err, req, res, next) {
  92.     res.status(err.status || 500);
  93.     res.render('error', {
  94.         message: err.message,
  95.         error: {}
  96.     });
  97. });
  98.  
  99. module.exports = app;
  100.  
  101. ----------------------------------------------------------------
  102.     routes/account.js
  103. ----------------------------------------------------------------
  104.  
  105. var express = require('express');
  106. var router = express.Router();
  107.  
  108. var passport = require('passport');
  109. var LocalStrategy = require('passport-local').Strategy;
  110.  
  111. router.get('/login', function(req, res) {
  112.     res.render('login', {title: "Log In"});
  113. });
  114.  
  115.  
  116.  
  117. router.post('/login', passport.authenticate('local'), function(re\
  118. q, res) {
  119.     res.redirect('/');
  120. });
  121.  
  122.  
  123. module.exports = router;
  124.  
  125. ----------------------------------------------------------------
  126.     Output
  127. ----------------------------------------------------------------
  128.  
  129. POST /user/login 400 32ms
  130.  
  131. http://localhost/user/login > Bad Request
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement