From 5ef112711cc660581eb17ec77df92de8816c236f Mon Sep 17 00:00:00 2001 From: Sola Date: Fri, 18 Dec 2015 03:22:24 +0800 Subject: [PATCH] solve 'manage may never expire session' issue --- .../love/sola/netsupport/wechat/WechatSession.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/java/love/sola/netsupport/wechat/WechatSession.java b/src/main/java/love/sola/netsupport/wechat/WechatSession.java index 7effa4d..2dd5fa7 100644 --- a/src/main/java/love/sola/netsupport/wechat/WechatSession.java +++ b/src/main/java/love/sola/netsupport/wechat/WechatSession.java @@ -1,9 +1,7 @@ package love.sola.netsupport.wechat; import love.sola.netsupport.config.Settings; -import me.chanjar.weixin.common.session.InternalSession; -import me.chanjar.weixin.common.session.StandardSessionManager; -import me.chanjar.weixin.common.session.WxSession; +import me.chanjar.weixin.common.session.*; import java.util.UUID; @@ -23,11 +21,15 @@ public class WechatSession { } public static WxSession get(String id, boolean create) { - return manager.getSession(id, create); + WxSession session = manager.getSession(id, create); + if (session != null) { + ((StandardSessionFacade) session).getInternalSession().endAccess(); + } + return session; } public static WxSession get(String id) { - return manager.getSession(id); + return get(id, true); } public static String genId() {