Custom middleware is a legacy option, since most times you just want to use policies.
HOWEVER! There are times you want to use sails for quick/dirty things you would normally use express for (but you already have sails around, w/e). More pertinently, if you want middleware to run before the static files from your assets
folder are served, policies won't let you do that.
// Put this in `config/express.js`
module.exports.express = {
customMiddleware: function (app) {
app.use(require('../node_modules/sails/node_modules/express').basicAuth('balderdash', 'wickywocky'));
}
};
Keep in mind this technique only works with Express (and your static files are only available that way anyhow)
Hi Mike,
For some reason, my customMiddleware function is not firing. I have the code in the right file (config/express.js). Any ideas? Here's the code -
var passport = require('passport');
module.exports.express = {
customMiddleware: function (app) {
console.log('INITIALIZE');
app.use(passport.initialize());
app.use(passport.session());
}
};
Thanks,
_K