Nodejs Express implicit middleware applied to all routes?

express, node.js

Solution

function a(req, res, next){
  req.data = data;
  // Update: based on latest version of express, better use this
  res.locals.data = data;
  next();
};

app.get('/*', a);

See the examples on the Express docs, Middleware section.

Problem

I wanted to know if Express would let me create a route middleware that would be called by default without me explicitly placing it on the app.get() arg list? // NodeJS newb ``` var data = { title: 'blah' }; // So I want to include this in every route function a(){ return function(req, res){ req.data = data; }; }; app.get('/', function(req, res) { res.render('index', { title: req.data.title }); }; ``` I understand I can do `app.set('data', data)` and access it via `req.app.settings.data` in the route. Which would probably satisfy my simple example above.

Original source