From 3fadc0bb9651888669bf8c3503cc7617217215d4 Mon Sep 17 00:00:00 2001 From: ray <1490493387@qq.com> Date: Sun, 6 Oct 2024 13:42:27 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20JWT=20=E7=94=9F=E6=88=90=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E6=B0=B8=E4=B8=8D=E8=BF=87=E6=9C=9F=EF=BC=88ttl?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E4=B8=BA-1=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../com/youlai/boot/core/security/util/JwtUtils.java | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 73720874..d54f8436 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.youlai youlai-boot - 2.10.0 + 2.12.1 基于 Java 17 + SpringBoot 3 + Spring Security 构建的权限管理系统。 diff --git a/src/main/java/com/youlai/boot/core/security/util/JwtUtils.java b/src/main/java/com/youlai/boot/core/security/util/JwtUtils.java index aef6df32..6a7ae6a3 100644 --- a/src/main/java/com/youlai/boot/core/security/util/JwtUtils.java +++ b/src/main/java/com/youlai/boot/core/security/util/JwtUtils.java @@ -70,14 +70,16 @@ public class JwtUtils { .collect(Collectors.toSet()); payload.put(JwtClaimConstants.AUTHORITIES, roles); - Date now = new Date(); - Date expiration = DateUtil.offsetSecond(now, ttl); payload.put(JWTPayload.ISSUED_AT, now); - payload.put(JWTPayload.EXPIRES_AT, expiration); + + // 设置过期时间 -1 表示永不过期 + if (ttl != -1) { + Date expiration = DateUtil.offsetSecond(now, ttl); + payload.put(JWTPayload.EXPIRES_AT, expiration); + } payload.put(JWTPayload.SUBJECT, authentication.getName()); payload.put(JWTPayload.JWT_ID, IdUtil.simpleUUID()); - return JWTUtil.createToken(payload, key); }