If you have any query feel free to chat us!
Happy Coding! Happy Learning!
To pass user data to views and restrict page access, we can use middleware in Express. Middleware functions can be used to intercept requests before they reach the intended route handler.
We can define a middleware function that checks if the user is authenticated by checking for the presence of a user object in the request object. If the user is not authenticated, the middleware function can redirect the user to the login page.
Here's an example middleware function that can be used to restrict access to a route:
scssCopy code
function isAuthenticated(req, res, next) {
if (req.user) {
// User is authenticated, continue to next middleware
return next();
}
// User is not authenticated, redirect to login page
res.redirect('/login');
}
This middleware function checks if the req.user
object is present. If it is, it means that the user is authenticated and the function calls next()
to continue to the next middleware function or route handler.
If req.user
is not present, it means that the user is not authenticated, and the function redirects the user to the login page using res.redirect('/login')
.
We can use this middleware function to restrict access to certain routes in our application by adding it as a parameter to the route definition:
javascriptCopy code
app.get('/dashboard', isAuthenticated, function(req, res) {
res.render('dashboard');
});
In this example, the isAuthenticated
middleware function is added as the second parameter to the app.get()
function. This means that the isAuthenticated
middleware function will be called before the route handler function.
If the user is authenticated, the route handler function will be called, and the dashboard
view will be rendered. If the user is not authenticated, the isAuthenticated
middleware function will redirect the user to the login page before the route handler function is called.
Comments: 2
I am not able to access videos from second class and further. I have already completed first class
When will I get my course?
Now, Your query was resolved.