Как проверить, истек ли срок действия токена JWT без исключений? ⇐ JAVA
-
Гость
Как проверить, истек ли срок действия токена JWT без исключений?
Я разрабатываю приложение Java (с использованием Spring Boot), и мне нужна помощь: Это приложение получает на входе токен JWT, который я обрабатываю в методе. На данный момент метод следующий:
private UsernamePasswordAuthenticationToken myMethod (запрос HttpServletRequest) { // Код, который получает строку «токен» пытаться{ Реестр Map = ((Map) (token.getBody().get("регистрация"))); String sub = ((String) (parsedToken.getBody().get("sub"))); UsernamePasswordAuthenticationToken FinalToken = новый UsernamePasswordAuthenticationToken (sub, null, null); вернуть окончательный токен; } catch (ExpiredJwtExceptionException) { // Только здесь я уверен, что срок действия токена истек! // Код, обрабатывающий исключение }
Однако мне нужно реализовать логику, которая должна проверять в нескольких местах, истек ли срок действия полученного токена или нет, без запуска этого метода каждый раз. Единственный способ узнать, истек ли срок действия token, — это исключение, вызванное ExpiredJwtException.
Есть ли способ узнать, истек ли срок действия токена, не проходя через перехваченное исключение? Например, было бы очень полезно, если бы существовал класс «токен» с атрибутом .isExpired или что-то в этом роде.
Я не хочу вдаваться в обработку исключения, потому что это означает, что я всегда буду зависеть от (длинного) кода блока try каждый раз, когда мне нужно проверить, истек ли срок действия токена или нет, и я этого не хочу.
Я разрабатываю приложение Java (с использованием Spring Boot), и мне нужна помощь: Это приложение получает на входе токен JWT, который я обрабатываю в методе. На данный момент метод следующий:
private UsernamePasswordAuthenticationToken myMethod (запрос HttpServletRequest) { // Код, который получает строку «токен» пытаться{ Реестр Map = ((Map) (token.getBody().get("регистрация"))); String sub = ((String) (parsedToken.getBody().get("sub"))); UsernamePasswordAuthenticationToken FinalToken = новый UsernamePasswordAuthenticationToken (sub, null, null); вернуть окончательный токен; } catch (ExpiredJwtExceptionException) { // Только здесь я уверен, что срок действия токена истек! // Код, обрабатывающий исключение }
Однако мне нужно реализовать логику, которая должна проверять в нескольких местах, истек ли срок действия полученного токена или нет, без запуска этого метода каждый раз. Единственный способ узнать, истек ли срок действия token, — это исключение, вызванное ExpiredJwtException.
Есть ли способ узнать, истек ли срок действия токена, не проходя через перехваченное исключение? Например, было бы очень полезно, если бы существовал класс «токен» с атрибутом .isExpired или что-то в этом роде.
Я не хочу вдаваться в обработку исключения, потому что это означает, что я всегда буду зависеть от (длинного) кода блока try каждый раз, когда мне нужно проверить, истек ли срок действия токена или нет, и я этого не хочу.
Мобильная версия