gpt4 book ai didi

javascript - 如何验证nodejs中的jwt token /永不过期?

转载 作者:行者123 更新时间:2023-12-02 22:57:06 29 4
gpt4 key购买 nike

我在 Node js 中实现了 JWT token 。我能够生成 jwt token 。现在我想检查它何时过期或无效 .我检查了文档,它说 120ms 之后它将过期。但是我的 token 没有过期。它总是解码 token ,为什么?

我像这样生成 token '

app.get("/saveData", async (req, res) => {
try {
const token = await userService.create({
userId: "abcp",
password: "hello",
appsAccess: ["yes", "test"]
});

res.send(token);
} catch (error) {
console.log(error);
}
});

并像这样验证 token

app.get("/verify-token", async (req, res) => {
let tokenStatus = await userService.verifyAccessToken(
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7InVzZXJJZCI6ImFiY3AiLCJhcHBzQWNjZXNzIjpbInllcyIsInRlc3QiXSwiX2lkIjoiNWQ3Yzk4MTYzZmQ1NGIwOGUwMjYzNjg0IiwiX192IjowfSwiaWF0IjoxNTY4NDQ2NDg2LCJpc3MiOiJqamoiLCJzdWIiOiJhYmNwIn0.1fqzYJ1p9jSIiNjbA7MwEsU4EsMmmpxF34TU1ZjonSA"
);
res.send(tokenStatus);
});

这是我的代码

https://codesandbox.io/s/lively-tree-hd0fo

verifyAccessToken(token) {
return jwt.verify(token, "jhjhhj");
}

我希望如果我生成 token ,它将在 10min30min..etc 后过期

最佳答案

您可以使用expiresIn选项来执行此操作。基于您的代码的示例:

const token = jwt.sign(payload, "jhjhhj", {
algorithm: "HS256",
issuer: "jjj",
subject: `${user.userId}`,
expiresIn: "10m"
});

关于javascript - 如何验证nodejs中的jwt token /永不过期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57933479/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com