operation.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. let express = require('express');
  2. let config = require("./config/config.js");
  3. config.setToQaDb();
  4. //config.setupCache();
  5. let cfgCacheUtil = require("./config/cacheCfg");
  6. cfgCacheUtil.setupDftCache();
  7. let dbm = require("./config/db/db_manager");
  8. let path = require('path');
  9. let session = require('express-session');
  10. let DBStore = require('connect-mongo')(session);
  11. let fileUtils = require("./modules/common/fileUtils");
  12. let URL = require('url');
  13. let fs = require('fs');
  14. let app = express();
  15. let _rootDir = __dirname;
  16. dbm.connect();
  17. app.use(express.static(_rootDir));
  18. app.set('views', path.join(__dirname, 'web'));
  19. app.engine('.html', require('ejs').__express);
  20. app.set('view engine', 'html');
  21. let bodyParser = require('body-parser');
  22. app.use(bodyParser.urlencoded({extended: false}));
  23. app.use(bodyParser.json());
  24. app.use(session({
  25. name: 'usersSession',
  26. secret: 'session users secret',
  27. cookie: {maxAge: 1000*60*30},
  28. resave: false,
  29. rolling: true,
  30. saveUninitialized: true
  31. //*
  32. ,store: new DBStore({
  33. url: 'mongodb://' + config.current.server + ':' + config.current.port + '/usersManagesOpr'
  34. })
  35. //*/
  36. }));
  37. app.use(function (req, res, next) {
  38. let url = req.originalUrl, referer;
  39. if (!/^\/login/.test(req.originalUrl) && !req.session.userAccount) {
  40. if (/\/api/.test(req.originalUrl)) {
  41. referer = URL.parse(req.headers.referer);
  42. return res.redirect('/login' + '?referer=' + referer.path);
  43. } else {
  44. return res.redirect("/login" + '?referer=' + req.originalUrl);
  45. }
  46. }
  47. next();
  48. });
  49. //加载路由文件
  50. fileUtils.getGlobbedFiles('./modules/**/routes/*.js').forEach(function(modelPath) {
  51. require(path.resolve(modelPath))(app);
  52. })
  53. app.use(function(req, res, next) {
  54. res.status(404).send('404 Error');
  55. });
  56. app.use(function(err, req, res, next) {
  57. console.error(err.stack);
  58. res.status(500).send('500 Error');
  59. });
  60. //设置Date Format函数
  61. fs.readFile(__dirname + '/public/web/date_util.js', 'utf8', 'r', function (err, data) {
  62. eval(data);
  63. // let dt = new Date();
  64. // console.log(dt.Format('yyyy-M-dd'));
  65. // console.log(dt.Format('yyyy 年 M 月 dd 日'));
  66. // console.log(dt.Format('yyyy 年 M 月 20 日'));
  67. });
  68. app.listen(6080, function(){
  69. console.log("server started!");
  70. });