Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

155
Visualizações
enviar una variable con un valor al frente de todas las rutas node.js

Tengo valores req.session que se almacenan al iniciar sesión. Pero lo que quiero hacer es acceder a ellos en cada página de mi aplicación (front-end (ejs)), pero no quiero acceder a todas las rutas/funciones que tengo y aprobarlas. Entonces, me preguntaba si hay una forma universal de pasar req.session al front-end desde una ruta y acceder a ellos en todas las páginas.

mis rutas se ven así:

 app.get('/', (req, res) => { res.render("index.ejs"); })

Lo siento si esta es una pregunta extraña, pero me pregunto si hay formas universales de hacer cosas como esta.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

En la autenticación, probablemente necesite estas dos cosas:

  • Front-end: contexto para formar un estado global en torno a la información de autenticación
  • Back-end: recupere la información del usuario según la identificación de la sesión enviada y el Middleware para autenticar las solicitudes

Debe configurar algo como authContext para obtener información de sessionID del backend y activar alguna función al iniciar y cerrar sesión para revisar la autenticación. Es posible que desee investigar React Context para descubrir cómo aplicar el "estado global", si no está familiarizado con eso.

En el backend, use el middleware para autenticar cada solicitud HTTP y aplique ese middleware a la ruta en la que desea aplicar la autenticación.

Que puede ser algo como esto:

 async function auth (req, res, next) { try { const session = await MySessions.findById(req.sessionID); if (!session) throw 'Not authenticated' else next() } catch (error) { // Response will be rejected, and wont be passed to route due to not sending next() return res.status(401).send({ error }) } } // Example of applying middleware auth to route you need. router.delete('/:postId', auth, async (req, res) => { ... }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda