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);
}