From 9f29593e404a3ea12ea132da010fdd06368b5b85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=80=E6=BA=90=E6=B5=B7=E5=93=A5?= Date: Wed, 28 Jul 2021 09:45:10 +0000 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=20=E5=88=B7=E6=96=B0=20AccessToken=20=E7=9A=84=20Func?= =?UTF-8?q?tion=EF=BC=8C=E7=94=A8=E4=BA=8E=E7=AC=AC=E4=B8=89=E6=96=B9?= =?UTF-8?q?=E5=B9=B3=E5=8F=B0=E7=9A=84=E5=9C=BA=E6=99=AF=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jfinal/weixin/sdk/api/AccessTokenApi.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/main/java/com/jfinal/weixin/sdk/api/AccessTokenApi.java b/src/main/java/com/jfinal/weixin/sdk/api/AccessTokenApi.java index a4b3c5c..d393f3c 100644 --- a/src/main/java/com/jfinal/weixin/sdk/api/AccessTokenApi.java +++ b/src/main/java/com/jfinal/weixin/sdk/api/AccessTokenApi.java @@ -8,6 +8,7 @@ package com.jfinal.weixin.sdk.api; import java.util.Map; import java.util.concurrent.Callable; +import java.util.function.Function; import com.jfinal.kit.StrKit; import com.jfinal.weixin.sdk.cache.IAccessTokenCache; @@ -34,6 +35,17 @@ public class AccessTokenApi { // 用于手动设置的 accessToken private static AccessToken accessToken=null; + // 用于第三方平台刷新 accessToken + private static Function refreshAccessTokenFunction = null; + + public static Function getRefreshAccessTokenFunction() { + return refreshAccessTokenFunction; + } + + public static void setRefreshAccessTokenFunction(Function refreshAccessTokenFunction) { + AccessTokenApi.refreshAccessTokenFunction = refreshAccessTokenFunction; + } + public static void setAccessToken(AccessToken ak){ accessToken=ak; } @@ -89,6 +101,10 @@ public class AccessTokenApi { * @return AccessToken */ public static AccessToken refreshAccessToken(ApiConfig ac) { + if (refreshAccessTokenFunction != null) { + return refreshAccessTokenFunction.apply(ac); + } + String appId = ac.getAppId(); String appSecret = ac.getAppSecret(); final Map queryParas = ParaMap.create("appid", appId).put("secret", appSecret).getData(); -- Gitee