server.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. var express = require('express');
  2. var app = express();
  3. var server = require('http').createServer(app);
  4. var bodyParser = require('body-parser');
  5. var compress = require('compression');
  6. var cors = require('cors');
  7. var authMiddleware = require('../lib/server/middlewares/authMiddleware');
  8. var apiLimitsMiddleware = require('../lib/server/middlewares/apiLimitsMiddleware');
  9. var wwwRedirectMiddleware = require('../lib/server/middlewares/wwwRedirectMiddleware');
  10. // Middlewares
  11. app.use(compress());
  12. app.use(bodyParser.json());
  13. app.use(cors());
  14. app.use(wwwRedirectMiddleware);
  15. app.use(authMiddleware);
  16. app.use(apiLimitsMiddleware);
  17. app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded
  18. // EJS HTML engine
  19. app.engine('.html', require('ejs').__express);
  20. app.set('view engine', 'ejs');
  21. // Initialize the controllers
  22. var apiController = require('../lib/server/controllers/apiController')(app);
  23. var frontController = require('../lib/server/controllers/frontController')(app);
  24. // Let's start the server!
  25. if (!process.env.GRUNTED) {
  26. var settings = require('../server_config/settings.json');
  27. app.locals.baseUrl = settings.baseUrl;
  28. server.listen(settings.serverPort, function() {
  29. console.log('Listening on port %d', server.address().port);
  30. // For the tests
  31. if (server.startTests) {
  32. server.startTests();
  33. }
  34. });
  35. }
  36. module.exports = app;