From 76e0b150d0b9cb8d733668abcbb1763a759fc90d Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期一, 27 十一月 2023 19:56:57 +0800
Subject: [PATCH] 后台bug修改
---
cloud-server-account/src/main/java/com/dsh/account/util/TokenUtil.java | 30 ++++++++++++++++++++++++++----
1 files changed, 26 insertions(+), 4 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..79e4f80 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,21 +14,41 @@
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);
String key = null;
int length = requestHeader.length();
- if(length > 32){
+ if (length > 32) {
key = requestHeader.substring(length - 32);
- }else{
+ } else {
key = requestHeader;
}
String value = redisUtil.getValue(key);
return null != value ? Integer.valueOf(value) : null;
- }else{
+ } else {
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