Reputation: 303
How can I insert isLoggedIn
as a condition to the get request using router.route?
const controller = require('./controller');
const Router = require('express').Router;
const router = new Router();
function isLoggedIn(req, res, next) {
if (req.isAuthenticated())
return next();
res.redirect('/');
}
router.route('/')
.get((...args) => controller.find(...args))
I assume that the ...args
are (req, res, next)
I tried
router.route('/')
.get(isLoggedIn(...args) => controller.find(...args))
But I get
.get((isLoggedIn(...args)) => controller.find(...args))
^
SyntaxError: Unexpected token (
Upvotes: 0
Views: 1624
Reputation: 4078
The docs say, that you can assign multiple handlers to one route. Like this:
app.use('/user/:id', function (req, res, next) {
console.log('Request URL:', req.originalUrl)
next()
}, function (req, res, next) {
console.log('Request Type:', req.method)
next()
})
In your case the coding looks like the following
router.get('/', isLoggedIn, controller.find);
Upvotes: 1