server.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. var express = require('express');
  2. // chenshilong add this, 2017.03.07 --------------------------------begin
  3. var path = require('path');
  4. var session = require('express-session');
  5. var DBStore = require('connect-mongo')(session);
  6. // -----------------------------------------------------------------end
  7. var app = express();
  8. var _rootDir = __dirname;
  9. app.use(express.static(_rootDir));
  10. // chenshilong add this, 2017.03.07 --------------------------------begin
  11. app.set('views', path.join(__dirname, 'web'));
  12. app.engine('.html', require('ejs').__express);
  13. app.set('view engine', 'html');
  14. // -----------------------------------------------------------------end
  15. var bodyParser = require('body-parser');
  16. app.use(bodyParser.urlencoded({extended: false}));
  17. app.use(bodyParser.json());
  18. // chenshilong add this, 2017.03.07 --------------------------------begin
  19. app.use(session({
  20. name: 'usersSession',
  21. secret: 'session users secret',
  22. cookie: {maxAge: 1000*60*30},
  23. resave: false,
  24. saveUninitialized: true,
  25. store: new DBStore({
  26. url: 'mongodb://localhost:27017/usersManages'
  27. })
  28. }));
  29. var users = require('./modules/users/routes/users_route');
  30. app.use('/', users);
  31. // -----------------------------------------------------------------end
  32. var pmRouter = require('./modules/pm/routes/pm_route');
  33. app.use('/', pmRouter);
  34. app.get('/main', function(req, res) {
  35. if (!req.session.userAccount) {
  36. res.redirect('/login');
  37. }
  38. else {
  39. res.render('main/html/main.html',
  40. {
  41. userAccount: req.session.userAccount,
  42. userID: req.session.userID
  43. });
  44. }
  45. });
  46. var apiRouter = express.Router();
  47. app.use('/api', apiRouter);
  48. app.use(function(req, res, next) {
  49. res.status(404).sendFile(_rootDir+'/src/404.html');
  50. });
  51. app.use(function(err, req, res, next) {
  52. console.error(err.stack);
  53. res.status(500).send('500 Error');
  54. });
  55. app.listen(6060);