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

506
Visualizações
cómo acceder al token del portador en vue

Estoy tratando de obtener la información del usuario actual usando el token jwt después de iniciar sesión correctamente, el token se guarda en el navegador, pero cada vez que envío la solicitud aparece un error

token que obtengo en la pestaña de mi aplicación en mi consola

 token:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI2MjM4NzA4ZDc2ZDVkMDJmZWMwNGRiZDEiLCJpYXQiOjE2NDgwODI3MTV9.xvFdGR8skZntTIdlo9aSCx90315rSoUxct_VIR9cf6Q

error que recibo en mi consola cuando estoy en la ruta del usuario

 { "success": false, "message": "Failed to authenticate" }

mi etiqueta de script para obtener la información del usuario actual

 <script> import axios from "axios"; export default { name: "HelloWorld", data() { return { msg: "Welcome to Your Vue.js App" }; }, mounted() { axios .get("http://localhost:5000/api/auth/user", { headers: { Authorization: "Bearer ${token}", token: localStorage.getItem("token") } }) .then(res => { console.log(res); }); } }; </script>

ruta de back-end para la autenticación

 router.get("/auth/user", verifyToken, async (req, res) => { try { let foundUser = await User.findOne({ _id: req.decoded._id }).populate( "address" ); if (foundUser) { res.json({ success: true, user: foundUser }); } } catch (err) { res.status(500).json({ success: false, message: err.message }); } });

jwt middleware para verificar el token

 const jwt = require("jsonwebtoken"); module.exports = function (req, res, next) { let token = req.headers["x-access-token"] || req.headers["authorization"]; let checkBearer = "Bearer "; if (token) { if (token.startsWith(checkBearer)) { token = token.slice(checkBearer.length, token.length); } jwt.verify(token, process.env.SECRET, (err, decoded) => { if (err) { console.log(err) res.json({ success: false, message: "Failed to authenticate" }); } else { req.decoded = decoded; next(); } }); } else { res.json({ success: false, message: "No token Provided" }); } };

no entiendo por qué recibo un error cuando mi token se guarda en mi almacenamiento local

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

0

deberías ver tu token en la consola.

si no ves, no guardaste correctamente. debe verificar su método de guardado.

 <script> import axios from "axios"; export default { name: "HelloWorld", data() { return { msg: "Welcome to Your Vue.js App" }; }, mounted() { let token=localStorage.getItem("token"); console.log(token); axios .get("http://localhost:5000/api/auth/user", { headers: { Authorization: `Bearer ${token}`, token: token } }) .then(res => { console.log(res); }); } }; </script>

y arreglé su método de middleware. para obtener token, puede dividir el carácter de espacio y tomar el último índice.

 const autheticateToken = (req, res, next) => { var authHeader = req.headers.authorization; const token = authHeader?.split(' ')[1]; if (token === null) { return res.json({ success: false, message: "Failed to authenticate" }); } JWT.verify(token, process.env.SECRET, (err, decoded) => { if (err) { return res.json({ success: false, message: "Failed to authenticate" }); } req.decoded = decoded; next(); }); }
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