From 9bfd32ac0781b51d2b8479b91a9754f18060fcb9 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期四, 14 十一月 2024 17:48:50 +0800
Subject: [PATCH] ll
---
server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 52 insertions(+), 1 deletions(-)
diff --git a/server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java b/server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
index f88920c..8e539a4 100644
--- a/server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
+++ b/server/system_service/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
@@ -1,28 +1,41 @@
package com.doumee.config.jwt;
import com.alibaba.fastjson.JSONObject;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.HttpsUtil;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
+import org.apache.http.client.HttpClient;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.HttpClientBuilder;
+import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
+import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
@Component
+@Slf4j
public class JwtTokenUtil {
@Autowired
private RedisTemplate<String,Object> redisTemplate;
@Resource
private JwtProperties jwtProperties;
-
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz ;
/**
* 鐢熸垚token浠ょ墝
@@ -113,12 +126,50 @@
*/
public void logout(String token) {
try {
+ //鐧诲嚭娴峰悍绯荤粺鏁版嵁
+ LoginUserInfo loginUserInfo = this.getUserInfoByToken(token);
+ String url = systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_HTTPS).getCode() +
+ systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_HOST).getCode() +
+ systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.LOGIN_OUT_URL).getCode();
+ if(StringUtils.isNotBlank(loginUserInfo.getHkMenuToken())){
+ log.info("璋冭捣娴峰悍閫�鍑虹櫥褰�=======================>"+url+"?token="+loginUserInfo.getHkMenuToken());
+// this.hkLoginOut(url+"?token="+loginUserInfo.getHkMenuToken());
+ HttpsUtil.get(url+"?token="+loginUserInfo.getHkMenuToken(),true);
+ }
redisTemplate.delete(Constants.REDIS_TOKEN_KEY+token);//鍒犻櫎鑰佺殑token
+
} catch (Exception e) {
e.printStackTrace();
}
}
+
+ public void hkLoginOut(String url){
+ try {
+ // 鍒涘缓HttpClient瀵硅薄
+ HttpClient httpClient = HttpClientBuilder.create().build();
+ // 鍒涘缓HttpGet瀵硅薄锛屾寚瀹氳璁块棶鐨刄RL鍦板潃
+ HttpGet httpGet = new HttpGet(url);
+ // 鍙戦�丟ET璇锋眰锛岃幏鍙栧搷搴�
+ HttpResponse response = httpClient.execute(httpGet);
+ // 鑾峰彇鍝嶅簲鐘舵�佺爜
+ int statusCode = response.getStatusLine().getStatusCode();
+ // 鍒ゆ柇璇锋眰鏄惁鎴愬姛
+ if (statusCode == 200) {
+ // 鑾峰彇鍝嶅簲鍐呭
+ HttpEntity entity = response.getEntity();
+ String responseContent = EntityUtils.toString(entity, "UTF-8");
+ System.out.println(responseContent);
+ log.info("璋冭捣娴峰悍閫�鍑虹櫥褰曡繑鍥炰俊鎭�=======================>"+responseContent);
+ } else {
+ System.out.println("璇锋眰澶辫触锛屽搷搴旂爜锛�" + statusCode);
+ }
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+
/**
* 楠岃瘉浠ょ墝
*
--
Gitblit v1.9.3