diff options
Diffstat (limited to 'app.js')
-rw-r--r-- | app.js | 56 |
1 files changed, 56 insertions, 0 deletions
@@ -0,0 +1,56 @@ +const express = require('express') +const path = require('path') +const logger = require('morgan') +const cookieParser = require('cookie-parser') +const bodyParser = require('body-parser') + +const routes = require('./routes/index') +const meetingpointProxy = require('./routes/meetingpointProxy') + +const app = express() + +// view engine setup +app.set('views', path.join(__dirname, 'views')) +app.set('view engine', 'jade') + +app.use(logger('dev')) +app.use(bodyParser.json()) +app.use(bodyParser.urlencoded({ extended: false })) +app.use(cookieParser()) +app.use(express.static(path.join(__dirname, 'public'))) + +app.use('/', routes) +app.use('/meetingpointProxy', meetingpointProxy) + +// catch 404 and forward to error handler +app.use(function (req, res, next) { + const err = new Error('Not Found') + err.status = 404 + next(err) +}) + +// error handlers + +// development error handler +// will print stacktrace +if (app.get('env') === 'development') { + app.use(function (err, req, res, next) { + res.status(err.status || 500) + res.render('error', { + message: err.message, + error: err + }) + }) +} + +// production error handler +// no stacktraces leaked to user +app.use(function (err, req, res, next) { + res.status(err.status || 500) + res.render('error', { + message: err.message, + error: {} + }) +}) + +module.exports = app |