This tutorial is out of date and no longer maintained.
Route middleware is an extremely powerful tool in Node.js and Express. As an example of how powerful Express’s route middleware can be, the awesome Passport.js that handles authentication is a route middleware tool.
Also the other big players you usually use like bodyParser
and methodOverride
are also considered route middleware.
We’ll be looking at a quick way to make sure your users are authenticated before they visit parts of your application.
app.get('/hello', function(req, res) {
res.send('look at me!');
});
...
function isAuthenticated(req, res, next) {
// do any checks you want to in here
// CHECK THE USER STORED IN SESSION FOR A CUSTOM VARIABLE
// you can do this however you want with whatever variables you set up
if (req.user.authenticated)
return next();
// IF A USER ISN'T LOGGED IN, THEN REDIRECT THEM SOMEWHERE
res.redirect('/');
}
Now that we have our function to check if our user is logged in or authenticated, we’ll just apply it to our route.
app.get('/hello', isAuthenticated, function(req, res) {
res.send('look at me!');
});
While this is a simple example, you can see how you can create any function to do checks to see if your user is authenticated, a certain administrator level, or anything else your app needs.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!