mysql - 在验证/发布 Jwt 令牌时同时处理客户端请求
问题描述
我遇到了一个问题,我为我们的移动客户端(即 android/ios)公开了一些 api,当客户端调用某些 api 时,他们的请求会根据我们在将它们载入系统时提供的 jwt 令牌进行验证,这个 jwt 令牌包含一个t 时间的到期持续时间,现在当客户端同时命中两个请求并且 t 时间已经过去同时检查/验证客户端请求时会发生什么,我们发现 jwt 已过期,我们将带有新 jwt 令牌的消息返回给具有延长到期期限的客户端也相应的刷新令牌在数据库中为用户更新,因此对于进一步的请求,我们可以根据具有此 jwt 的用户是否与此引用令牌内的相同来验证用户。
按照这个过程,客户端的第一个请求成功进行,并且一个新的令牌被发布并返回给客户端现在当第二个请求到达时会发生什么,当我们尝试使用由客户端的第一个请求更新的刷新令牌来验证这个 jwt 令牌时向客户端返回无效的身份验证错误。
我想在我们的 api 级别处理这种情况,像脏检查这样的东西会有帮助吗?
我正在使用 Spring Boot Spring Data JPA
解决方案
推荐阅读
- c# - 使用 Json.NET 序列化程序对某些属性进行驼峰式处理,但对其他属性则不然
- c - 使用未声明的标识符“ENOMEM”
- javascript - 测试要匹配的特定数量的单词,在 Js 中使用带有正则表达式的已知分隔符
- python - “ValueError:预期,分隔符:第 10 行第 11 列(字符 357)”
- java - Log4j 中的字符串连接性能
- collections - 将 int 列表折叠到 kotlin 中的范围列表
- swift - 如何将函数返回到标签 StringValue
- html - 悬停时的 CSS 下拉菜单
- r - 如何通过点是否在多边形内来标记点
- reactjs - 开玩笑:为什么它会因 TypeError 失败:路径必须是字符串。收到未定义