【发布时间】:2020-03-12 10:24:31
【问题描述】:
我正在尝试在 nodejs 中使用 jwt 解码令牌。这不起作用,每次我得到undefined 作为解码令牌。
这是我的代码:
const token = req.headers.authorization.split(' ')[1];
const decodedToken = jwt.verify(token, 'RANDOM_TOKEN_SECRET');
const userId = decodedToken.userId;
console.log(decodedToken);
console.log(decodedToken.userId);
【问题讨论】:
-
你能检查令牌总是有值吗?
-
我已经检查了好几次了。如果我
console.log()令牌本身,我会得到一个值,但解码是问题。 -
console.log(token)的输出是什么?在许多情况下,当人们问为什么他们的代码不工作时,实际上只是一个过期或无效的令牌。也许你只是在最后一行得到 undefined,因为它不包含userId。 -
你在使用 Bearer 令牌吗?
-
是的,我正在使用不记名令牌