wzh 1 год назад
Родитель
Сommit
220736b5fb
1 измененных файлов с 10 добавлено и 1 удалено
  1. 10 1
      src/main/java/com/qlm/controller/jinzai/MobileController.java

+ 10 - 1
src/main/java/com/qlm/controller/jinzai/MobileController.java

@@ -20,6 +20,7 @@ import com.jfinal.weixin.sdk.api.ApiConfigKit;
 import com.jfinal.weixin.sdk.api.JsTicket;
 import com.jfinal.weixin.sdk.api.JsTicketApi;
 import com.jfinal.weixin.sdk.api.JsTicketApi.JsApiType;
+import com.jfinal.weixin.sdk.cache.IAccessTokenCache;
 import com.qlm.annotation.RequestUrl;
 import com.qlm.log.Log;
 import com.qlm.tools.WxUtil;
@@ -322,10 +323,18 @@ public class MobileController extends Controller{
 	}
 	
 	public void setJsTicket() {
-		ApiConfigKit.setThreadLocalApiConfig(getApiConfig());
+		ApiConfig apiConfig = getApiConfig();
+		
+		ApiConfigKit.setThreadLocalApiConfig(apiConfig);
 		JsTicket jsApiTicket = JsTicketApi.getTicket(JsApiType.jsapi);
 		if(!jsApiTicket.isAvailable() || !jsApiTicket.isSucceed()){
 			Db.update("insert t_error value(id,now())");
+			
+			 IAccessTokenCache accessTokenCache = ApiConfigKit.getAccessTokenCache();
+			 String key = apiConfig.getAppId() + ':' + JsApiType.jsapi.name();
+			 accessTokenCache.remove(key);
+			 jsApiTicket = JsTicketApi.getTicket(JsApiType.jsapi);
+			 Log.info("重新获取ticket,获取结果:"+jsApiTicket.isAvailable()+",成功:"+jsApiTicket.isSucceed());
 		}
 		String ticket = jsApiTicket.getTicket();
 		String nonce_str = create_nonce_str();