Boa tarde Alura, gostaria de intender melho o que esta acontecendo aqui: passport.authenticate()(req, res, next). authenticate e um método com suas assinaturas esse (req, res, next) seria o que ? me parece um metodo chamando outro metodo? esse e o codigo todo:
local: (req, res, next)=>{
passport.authenticate(
'local',
{session: false},
(erro, usuario, info)=>{
if(erro && erro.name === 'InvalidArgumentError'){
return res.status(401).json({erro: erro.message});
}
if(erro){
return res.status(500).json({erro: erro.message});
}
if(!usuario){
return res.status(401).json();
}
req.user = usuario;
return next();
}
)(req, res, next);
}
obrigado