如何延长node.js中相同jwt令牌的到期时间
Posted
技术标签:
【中文标题】如何延长node.js中相同jwt令牌的到期时间【英文标题】:how to extend the expiry time of same jwt token in node.js 【发布时间】:2019-04-18 08:30:58 【问题描述】:我对 jwt 令牌 node.js 做了很多谷歌,但我无法找到如何在验证期间或以其他方式延长 jwt 令牌的到期时间。
我尝试过刷新令牌,它返回一个新令牌,但我想重用相同的令牌而不是新令牌。
假设如果我们将到期时间设置为 10 分钟,并且如果用户将在第 9 分钟执行某些活动,那么在同一令牌的到期时间上再增加 10 分钟。但是我无法使用 node.js 延长该到期时间,所以请帮助我延长相同 jwt 令牌的时间跨度而不对其进行任何更改,以便用户继续使用相同的 jwt 令牌。
【问题讨论】:
一旦生成令牌,您将无法延长该令牌的时间,因为时间也在此令牌中加密,如果您更改时间令牌也将更改。有关更多详细信息,请查看此jwt.io/#debugger 有一个时间参数。最好的解决方案是使用refresh-token
方法。
但是在刷新令牌的情况下,我们会得到一个新令牌,正如我在或问题中提到的那样。那么,有什么方法可以延长到期时间来获得相同的令牌?
不,不修改令牌是不可能的。
感谢阿比德的宝贵意见。那么,是否有任何可能的方式在另一个令牌机制中继续使用相同的令牌,因为它是客户端的要求。
你在客户端使用什么?
【参考方案1】:
以天为单位设置过期时间:试试这个
var token = jwt.sign(email:'demo@gmail.com', "Stack",
expiresIn: '365d' // expires in 365 days
);
【讨论】:
仔细阅读问题,他想在延长时间内使用相同的令牌。 感谢您的回复。我可以延长同一个令牌的到期时间吗?以上是关于如何延长node.js中相同jwt令牌的到期时间的主要内容,如果未能解决你的问题,请参考以下文章