关于如何实现JWT有很多选择,归根结底是您的需求和您希望应用程序如何运行。
我的猜测是,在大型应用程序中,每次重新发布令牌并在前端更新都不会有很好的性能。您必须完全替换令牌,因为最后访问时间戳是有效负载的一部分,因此,如果更改有效负载的任何部分,则有效负载的签名将不同。如果它不是令牌的一部分,它可以在前端访问,并且可以很容易地更改为允许无限访问。
刷新令牌通常与OAuth2相关联。设置授权服务器来颁发令牌提供了一个很好的责任划分,并以文档良好的、基于标准的方式抽象出应用程序的相当大的一部分。它还允许您撤销刷新令牌,从而可以撤销用户的访问权限(尽管不是立即)。最重要的是,它允许您对每个请求使用相同的访问令牌,而无需重新发出。
💡 关键要点
关于如何实现JWT有很多选择,归根结底是您的需求和您希望应用程序如何运行。 我的猜测是,在大型应用程序中,每次重新发布令牌并在前端更