فهرست منبع

token缓存时间戳处理

zhouy 3 ماه پیش
والد
کامیت
44ee2ec5d3
2فایلهای تغییر یافته به همراه4 افزوده شده و 3 حذف شده
  1. 2 2
      src/main/java/com/uas/eis/core/SSOTokenManager.java
  2. 2 1
      src/main/java/com/uas/eis/sdk/NetEasySDK.java

+ 2 - 2
src/main/java/com/uas/eis/core/SSOTokenManager.java

@@ -23,7 +23,7 @@ public class SSOTokenManager {
      */
     public static String getSsoAuthToken(String  ssoAuth) {
         TokenInfo tokenInfo = tokenCache.get(ssoAuth);
-        if (tokenInfo == null || tokenInfo.expirationTime-60*5*1000 < System.currentTimeMillis()) {
+        if (tokenInfo == null || tokenInfo.expirationTime-60*3*1000 < System.currentTimeMillis()) {
             return null;
         }
         logger.info("获取缓存token,token:{},过期时间:{}",tokenInfo.token,tokenInfo.expirationTime);
@@ -33,7 +33,7 @@ public class SSOTokenManager {
         TokenInfo tokenInfo = new TokenInfo();
         tokenInfo.token = token;
         tokenInfo.expirationTime = expirationTime;
-        logger.info("设置token,token:{},过期时间:{}",token,expirationTime);
+        logger.info("设置token,token:{},过期时间:{},系统时间:{}",token,expirationTime,System.currentTimeMillis());
         lock.lock();
         try {
             tokenCache.put(ssoAuth, tokenInfo);

+ 2 - 1
src/main/java/com/uas/eis/sdk/NetEasySDK.java

@@ -12,6 +12,7 @@ import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.Resource;
+import java.time.ZoneId;
 
 @Component
 public class NetEasySDK {
@@ -66,7 +67,7 @@ public class NetEasySDK {
             // 查看文档,应用获取token
             R<SsoLoginResp> ssoLoginRespR = sdkInstance.ssoAuthToken(netEasyConfig.getAuthCode());
             SsoLoginResp ssoLoginResp = ssoLoginRespR.getDataBean(SsoLoginResp.class);
-            SSOTokenManager.setSsoAuthToken(authSSOTokenKey, ssoLoginResp.getSsoAuthToken(), ssoLoginResp.getSsoAuthTokenExpiredTime().getTime());
+            SSOTokenManager.setSsoAuthToken(authSSOTokenKey, ssoLoginResp.getSsoAuthToken(), ssoLoginResp.getSsoAuthTokenExpiredTime().getTime()-8*60*60*1000);
             return ssoLoginResp.getSsoAuthToken();
         } else {
             logger.info("从缓存中获取ssoAuthToken:token{}",ssoAuthToken);