From 3940e5ebf6a2fecca5fc75c9e5d8a325c5842681 Mon Sep 17 00:00:00 2001 From: zhaozhengjie <237651143@qq.com> Date: 星期日, 09 十月 2022 14:00:21 +0800 Subject: [PATCH] Merge branch 'huacheng_test' of http://gitlab.nhys.cdnhxx.com/root/zhihuishequ into huacheng_test --- flower_city/src/main/java/com/dg/core/manager/RedisTokenManager.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 53 insertions(+), 4 deletions(-) diff --git a/flower_city/src/main/java/com/dg/core/manager/RedisTokenManager.java b/flower_city/src/main/java/com/dg/core/manager/RedisTokenManager.java index fd6a87c..66972db 100644 --- a/flower_city/src/main/java/com/dg/core/manager/RedisTokenManager.java +++ b/flower_city/src/main/java/com/dg/core/manager/RedisTokenManager.java @@ -1,12 +1,15 @@ package com.dg.core.manager; import com.dg.core.Constant; +import io.jsonwebtoken.Claims; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.script.DigestUtils; import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer; import org.springframework.stereotype.Component; +import org.springframework.util.ObjectUtils; import java.util.UUID; import java.util.concurrent.TimeUnit; @@ -15,8 +18,8 @@ * 通过Redis存储和验证token的实现类 */ @Component -public class RedisTokenManager implements TokenManager { - +public class RedisTokenManager implements TokenManager +{ private RedisTemplate<String, String> redis; @Qualifier("redisTemplate") @@ -38,9 +41,8 @@ return token; } - public boolean checkToken(String token) { - if (token == null) { + if (StringUtils.isEmpty(token)) { return false; } String userId = redis.boundValueOps(token).get(); @@ -53,6 +55,30 @@ } + /** + * 验证花城token + * @param token + * @return + */ + @Override + public boolean checkHCToken(String token) { + if (StringUtils.isEmpty(token)) { + return false; + } + // token解析 + Claims claims = JWTTokenUtil.getClaimsFromToken(token); + if (ObjectUtils.isEmpty(claims)) { + return false; + } + String userId = claims.getSubject(); + if (ObjectUtils.isEmpty(userId)) + { + return false; + } + return true; + } + + @Override public long getUserId(String token) { if (token == null) { @@ -62,6 +88,29 @@ return Long.parseLong(userId); } + /** + * 获取花城e+的 UserId + * @param token + * @return + */ + @Override + public long getHCUserId(String token) { + if (token == null) { + return -1; + } + // token解析 + Claims claims = JWTTokenUtil.getClaimsFromToken(token); + if (ObjectUtils.isEmpty(claims)) { + return -1; + } + String userId = claims.getSubject(); + if (ObjectUtils.isEmpty(userId)) + { + return -1; + } + return Long.parseLong(userId); + } + public void deleteToken(String token) { redis.delete(token); } -- Gitblit v1.7.1