【发布时间】:2018-03-30 05:45:27
【问题描述】:
我在 laravel 中使用 JWT 包并在注销 api JWT::invalidate() 函数中使用,但令牌没有过期。
【问题讨论】:
标签: php jwt laravel-5.4 laravel-5.5
我在 laravel 中使用 JWT 包并在注销 api JWT::invalidate() 函数中使用,但令牌没有过期。
【问题讨论】:
标签: php jwt laravel-5.4 laravel-5.5
我不知道您正在使用的包的细节,但一般来说,JWT 令牌不能被撤销,这是规范的一部分以及它们是如何工作的。因为令牌是自包含的,不依赖任何外部会话存储
【讨论】:
您不能让令牌像那样过期,因为 JWT 令牌包含过期时间。相反,JWT::invalidate() 方法将该令牌添加到黑名单中,因此在到期时间保持不变的情况下,不应接受该令牌。
您可以设置一个较短的宽限期,以便在每次请求刷新令牌时允许并行 AJAX 请求之类的事情。也许您遇到此问题是因为令牌在失效后仍处于宽限期内?
【讨论】: