diff options
Diffstat (limited to 'app.js')
-rw-r--r-- | app.js | 40 |
1 files changed, 40 insertions, 0 deletions
@@ -0,0 +1,40 @@ +const createError = require('http-errors'); +const express = require('express'); +const path = require('path'); +const cookieParser = require('cookie-parser'); +const logger = require('morgan'); + +const indexRouter = require('./routes/index'); + +const app = express(); + +// view engine setup +app.set('views', path.join(__dirname, 'views')); +app.set('view engine', 'twig'); + +app.use(logger('dev')); +app.use(express.json()); +app.use(express.urlencoded({extended: false})); +app.use(cookieParser()); +app.use(express.static(path.join(__dirname, 'public'))); + +app.use('/', indexRouter); + +// catch 404 and forward to error handler +app.use(function (req, res, next) { + next(createError(404)); +}); + +// error handler +app.use(function (err, req, res, next) { + // render the error page + res.status(err.status || 500); + res.json( + { + message: err.message, + error: req.app.get('env') === 'development' ? err : {} + } + ) +}); + +module.exports = app; |