首页 > 解决方案 > 在验证/发布 Jwt 令牌时同时处理客户端请求

问题描述

我遇到了一个问题,我为我们的移动客户端(即 android/ios)公开了一些 api,当客户端调用某些 api 时,他们的请求会根据我们在将它们载入系统时提供的 jwt 令牌进行验证,这个 jwt 令牌包含一个t 时间的到期持续时间,现在当客户端同时命中两个请求并且 t 时间已经过去同时检查/验证客户端请求时会发生什么,我们发现 jwt 已过期,我们将带有新 jwt 令牌的消息返回给具有延长到期期限的客户端也相应的刷新令牌在数据库中为用户更新,因此对于进一步的请求,我们可以根据具有此 jwt 的用户是否与此引用令牌内的相同来验证用户。

按照这个过程,客户端的第一个请求成功进行,并且一个新的令牌被发布并返回给客户端现在当第二个请求到达时会发生什么,当我们尝试使用由客户端的第一个请求更新的刷新令牌来验证这个 jwt 令牌时向客户端返回无效的身份验证错误。

我想在我们的 api 级别处理这种情况,像脏检查这样的东西会有帮助吗?

我正在使用 Spring Boot Spring Data JPA

标签: mysqlspringspring-bootspring-data-jpajwt

解决方案


推荐阅读