Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

232
Vistas
¿Cómo transfiero un token jwt desde el almacenamiento local en el navegador web al backend del servidor?

Actualmente estoy diseñando un sitio web simple, donde los usuarios pueden iniciar sesión como un usuario normal o como administrador. En este momento, estoy codificando la parte para cuando el usuario quiera ir a una página web solo para administradores, y el servidor recuperará el token jwt almacenado en el almacenamiento local en el navegador web para validarlo.

Almacenamiento local del navegador web

Así es como se ve el almacenamiento local

Aquí está el código para recuperar el token jwt

 var verifyFn = { verifyToken: function (req, res, next) { const authHeader = localStorage.getItem("jwt_token"); console.log("THIS IS THE HEADER") console.log(authHeader) if (authHeader === null || authHeader === undefined ){ return res.status(401).send({ message: 'not authenticated BEARER TOKEN ISSUE' }); } const token = authHeader console.log("NEW TOKEN") console.log(token) jwt.verify(token, config.jwt.secret, { algorithms: ['HS256'] }, (err, decoded) => { if (err) return res.status(401).send({ message: 'not authenticated' }); req.decodedToken = decoded; console.log("DECODED TOKEN: " + req.decodedToken) next(); }); }

Sin embargo, cada vez que intento ejecutar el servidor y navego a la página de administración, aparece un error que dice "el almacenamiento local no está definido". Como tal, no estoy seguro de cómo puedo recuperar el jwt_token desde el navegador web hasta el back-end del servidor.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Un servidor no tiene acceso al objeto localStorage del navegador, ya que solo se puede acceder a él desde el cliente y no existe en el contexto del servidor.

Lo que se suele hacer es enviar el token en una cabecera de Authorization . Parece que está usando Node , así que considere la siguiente solicitud de ejemplo usando la API de búsqueda en el cliente:

 const jwtToken = localStorage.getItem('jwt_token') fetch('your-api-url', { method: 'request method here', headers: { Authorization: `Bearer ${jwtToken}` }, body: JSON.stringify(your request body here) }).then(response => ...)

En el servidor, puede obtener el token JWT mirando los encabezados de solicitud, algo como esto:

 var verifyFn = { verifyToken: function (req, res, next) { let authHeader = req.headers['Authorization'] // the auth header will have Bearer prepended, so remove it authHeader = authHeader.replace('Bearer ', '') console.log("THIS IS THE HEADER") console.log(authHeader) if (authHeader === null || authHeader === undefined ){ return res.status(401).send({ message: 'not authenticated BEARER TOKEN ISSUE' }); } const token = authHeader console.log("NEW TOKEN") console.log(token) jwt.verify(token, config.jwt.secret, { algorithms: ['HS256'] }, (err, decoded) => { if (err) return res.status(401).send({ message: 'not authenticated' }); req.decodedToken = decoded; console.log("DECODED TOKEN: " + req.decodedToken) next(); }); }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda