express global middleware not being called express global middleware not being called express express

express global middleware not being called


You should put your middleware before you use app.router.

...app.use (function (req, res, next) {  console.log ("inside middleware");  next();});...app.use(app.router);


Updated answer for Express 4 users from the Express 4 docs. See example from docs below. Note that app.router is deprecated and no longer used. I also added a dummy route to make the ordering clear.

You define error-handling middleware last, after other app.use() and routes calls

Example:

var bodyParser = require('body-parser');app.use(bodyParser());app.get('/', function(req, res) {    res.send('hello world');})app.use(function(err, req, res, next) {  // logic});