我遇到了一个问题,我为我们的移动客户端(即android/ios)公开了一些api,当客户端调用某些api时,他们的请求会根据我们在系统中安装时提供的jwt令牌进行验证,这个jwt令牌包含t时间的到期时间,现在,当客户端同时命中两个请求并且t时间已经过去时会发生什么呢?当检查/验证客户端请求时,我们发现jwt已过期,并且我们将带有新jwt令牌的消息返回给具有延长的过期期的客户端,同时相应的刷新令牌也会为数据库中的用户更新,以便对于进一步的请求,我们可以根据具有此jwt的用户是否与此referesh令牌中的用户相同来验证用户。
按照这个过程,客户机的第一个请求成功地进行,一个新的令牌被发出并返回给客户机。现在,当第二个请求到达时会发生什么情况?当我们尝试用客户机的第一个请求更新的刷新令牌验证这个jwt令牌时,会向客户机返回一个无效的身份验证错误。
我想在我们的api级别处理这个场景,像脏检查之类的东西会有帮助吗?
我用的是spring-boot-spring-data-jpa
暂无答案!
目前还没有任何答案,快来回答吧!