From 12e9e6b431d821ebeb91b4ddeaecfc5198deb523 Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期一, 20 十一月 2023 18:17:31 +0800
Subject: [PATCH] 11.11
---
cloud-server-account/src/main/java/com/dsh/account/util/TokenUtil.java | 24 +++++++++++++++++++++++-
1 files changed, 23 insertions(+), 1 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/util/TokenUtil.java b/cloud-server-account/src/main/java/com/dsh/account/util/TokenUtil.java
index 113a990..775a29d 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/util/TokenUtil.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/util/TokenUtil.java
@@ -2,6 +2,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
@@ -12,7 +14,9 @@
private RedisUtil redisUtil;
- public Integer getUserIdFormRedis(HttpServletRequest request) throws Exception {
+ public Integer getUserIdFormRedis() {
+ ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+ HttpServletRequest request = servletRequestAttributes.getRequest();
String requestHeader = request.getHeader("Authorization");
if (requestHeader != null && requestHeader.startsWith("Bearer ")) {
requestHeader = requestHeader.substring(requestHeader.indexOf(" ") + 1);
@@ -29,4 +33,22 @@
return null;
}
}
+
+ public void logout() {
+ ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+ HttpServletRequest request = servletRequestAttributes.getRequest();
+ String requestHeader = request.getHeader("Authorization");
+ if (requestHeader != null && requestHeader.startsWith("Bearer ")) {
+ requestHeader = requestHeader.substring(requestHeader.indexOf(" ") + 1);
+ String key = null;
+ int length = requestHeader.length();
+ if (length > 32) {
+ key = requestHeader.substring(length - 32);
+ } else {
+ key = requestHeader;
+ }
+ redisUtil.remove(key); // 删除存储在Redis中的对应用户信息
+ }
+ }
+
}
--
Gitblit v1.7.1