Skip to content

Instantly share code, notes, and snippets.

@chester89
Last active January 31, 2016 12:54
Show Gist options
  • Save chester89/2dc8d405544b8c780c31 to your computer and use it in GitHub Desktop.
Save chester89/2dc8d405544b8c780c31 to your computer and use it in GitHub Desktop.
Express.js error handling - working
var http = require('http');
var express = require('express');
var winston = require('winston');
var logger = ...
//setup Winston logger here, not really important
var app = express();
app.set('view engine', 'jade');
app.set('views', './views');
var mode = app.get('env');
var portNumber = 3000;
if(mode == 'production') {
var oneDay = 24 * 60 * 60 * 1000;
app.use(express.compress());
app.use(express.static('./public', { maxAge: oneDay }));
}
else {
app.use(express.static('./public'));
}
http.createServer(app).listen(portNumber, function() {
console.log('Express app started on ' + portNumber + ' port in ' + mode + ' mode');
});
app.get('/hello', function(req, res) {
res.send('Welcome!');
});
app.get('/starting', function(req, res) {
res.render('start');
});
app.use(function(err, req, res, next) {
logger.error('unknown error happened');
res.status(500).send('something broke!');
});
app.get('/error', function(req, res, next) {
somethingNonExistent(2016);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment