Olá Candinho, tudo bem com você?
Eu fiz download do seu projeto, e notei algumas inconsistências, mas são simples :)
sessao-autenticacao.js
Esse é um erro chatinho porque a gente quase nunca percebe, no caso:
const UsuarioDao = require('../app/infra/LivroDao');
Você está fazendo o require
do DAO de livros e ai a autenticação nunca daria certo :)
Corrigindo para:
const UsuarioDao = require('../app/infra/UsuarioDao');
livro-rotas.js
Aqui eu não entendi, pois não está implementado o método responsável por fazer a autenticação ou redirecionamento, no caso:
Em seu LivroControlador
, faltou adicionar as rotas que seriam consideradas autenticada:
class LivroControlador {
static rotas() {
return {
autenticadas: '/livros*',
[....]
};
}
Para então, nas rotas:
const BaseControlador = require("../controladores/BaseControlador");
module.exports = (app) => {
const rotasLivro = LivroControlador.rotas();
app.use(rotasLivro.autenticadas, (req, resp, next) => {
if(req.isAuthenticated()) {
next()
}
else {
resp.redirect(BaseControlador.rotas().login);
}
})
Dessa maneira toda requisição terá o processo de verificação de token, e então irá para a próxima tela, ou será redirecionado para a tela de login :)
Abraços e Bons Estudos!