【问题标题】:How to generate expiration time for refresh token?如何生成刷新令牌的过期时间?
【发布时间】:2021-12-18 21:28:58
【问题描述】:

我需要生成refresh token的过期时间,refresh token应该在200天后过期,如何生成exp时间呢?有图书馆吗?应该是什么格式? unix,也许是 YYYY/MM/DD 等?请有任何选择,谢谢!

【问题讨论】:

    标签: node.js authentication jwt


    【解决方案1】:

    您可以使用 json 网络令牌并使用 jsonwebtoken 包。

    https://www.npmjs.com/package/jsonwebtoken

    具体来说,如果您使用 options.expiresIn 值,它将为您处理日期计算和逻辑。使用verify() 方法时,如果令牌已过期,则会失败。

    【讨论】:

    • 刷新令牌是否使用jsonwebtoken包生成为访问令牌?因为现在我使用rand-token包生成刷新令牌,所以刷新令牌只是一个随机字符串,例如:GFZCdUw4ds0kRxeYaFU6jSETCRhqC3kQXBlmrLC3YB2uySg8irzH3LkB8BXSXQioT,我需要指定这个字符串的过期时间。
    • 我个人喜欢使用 json Web 令牌来访问和刷新令牌的概念。因此,您可以在令牌本身内,在它过期时保留,使客户端非常容易检查他们是否需要使用刷新令牌。唯一的区别是它的尺寸可能略大。如果你想使用随机令牌包,你可以使用类似 Moment.js 的东西来为你生成过期时间。 moment().add(200, 'days').toISOString() 将生成 ISO 8601 格式的日期 2013-02-13T22:44:30.652Z
    • 非常感谢!
    猜你喜欢
    • 2019-05-31
    • 2018-12-08
    • 1970-01-01
    • 1970-01-01
    • 2019-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多