X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=server%2Fapp.js;h=1fc03c598722a2e6f8028798539b6cc2b1fcf0a9;hb=dac395887d96e2d642b209c6db6aaacc3ffacb34;hp=aa8cade0cb85bb13cb1fb1ba85dc2003f9bdaa14;hpb=625022fdcf750f0aff8fcd699f7e9b89730e1d10;p=vchess.git diff --git a/server/app.js b/server/app.js index aa8cade0..1fc03c59 100644 --- a/server/app.js +++ b/server/app.js @@ -4,40 +4,43 @@ var path = require('path'); var cookieParser = require('cookie-parser'); var logger = require('morgan'); var favicon = require('serve-favicon'); +var params = require('./config/parameters'); var app = express(); -app.use(favicon(path.join(__dirname, "favicon", "favicon.ico"))); +app.use(favicon(path.join(__dirname, "static", "favicon.ico"))); if (app.get('env') === 'development') { - // Full logging in development mode - app.use(logger('dev')); + // Full logging in development mode + app.use(logger('dev')); } else { - // http://dev.rdybarra.com/2016/06/23/Production-Logging-With-Morgan-In-Express/ - app.set('trust proxy', true); - // In prod, only log error responses (https://github.com/expressjs/morgan) - app.use(logger('combined', { - skip: function (req, res) { return res.statusCode < 400 } - })); + // http://dev.rdybarra.com/2016/06/23/Production-Logging-With-Morgan-In-Express/ + app.set('trust proxy', true); + // In prod, only log error responses (https://github.com/expressjs/morgan) + app.use(logger('combined', { + skip: function (req, res) { return res.statusCode < 400 } + })); } app.use(express.json()); app.use(express.urlencoded({ extended: false })); app.use(cookieParser()); -app.use(express.static(path.join(__dirname, 'serve'))); //client "prod" files +app.use(express.static(path.join(__dirname, 'static'))); //client "prod" files // In development stage the client side has its own server -if (app.get('env') === 'development') +if (params.cors.enable) { - app.use(function(req, res, next) { - res.header("Access-Control-Allow-Origin", "*"); - res.header("Access-Control-Allow-Headers", - "Origin, X-Requested-With, Content-Type, Accept"); - next(); - }); + app.use(function(req, res, next) { + res.header("Access-Control-Allow-Origin", params.cors.allowedOrigin); + res.header("Access-Control-Allow-Credentials", true); //for cookies + res.header("Access-Control-Allow-Headers", + "Origin, X-Requested-With, Content-Type, Accept"); + res.header("Access-Control-Allow-Methods", "GET, POST, OPTIONS, PUT, DELETE"); + next(); + }); } // Routing (AJAX-only) @@ -57,11 +60,11 @@ app.use(function(err, req, res, next) { // render the error page res.status(err.status || 500); res.send(` - -

= message

-

= error.status

-
#{error.stack}
- `); + +

= message

+

= error.status

+
#{error.stack}
+ `); }); module.exports = app;