From a8509601f92d85e58c0861f15c7ee20d343a063a Mon Sep 17 00:00:00 2001 From: jianweie code Date: Thu, 27 Jun 2024 10:34:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=AE=9A=E6=97=B6=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=9B=B4=E6=96=B0accessToken=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RefreshWeChatAccessTokenJob.cs | 44 ++++++++++--------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/CoreCms.Net.Task/RefreshWeChatAccessTokenJob.cs b/CoreCms.Net.Task/RefreshWeChatAccessTokenJob.cs index 0f26278d..08d09046 100644 --- a/CoreCms.Net.Task/RefreshWeChatAccessTokenJob.cs +++ b/CoreCms.Net.Task/RefreshWeChatAccessTokenJob.cs @@ -129,7 +129,7 @@ namespace CoreCms.Net.Task else { var accessToken = WeChatCacheAccessTokenHelper.GetWeChatAccessToken(); - if (string.IsNullOrEmpty(accessToken)) + if (string.IsNullOrEmpty(accessToken) && entity.expireTimestamp > DateTimeOffset.Now.ToUnixTimeSeconds()) { // 将时间戳转换为DateTime var expireTime = DateTimeOffset.FromUnixTimeSeconds(entity.expireTimestamp).DateTime; @@ -137,17 +137,19 @@ namespace CoreCms.Net.Task var timeDifference = expireTime - DateTime.Now; await _redisOperationRepository.SetAsync(GlobalEnumVars.AccessTokenEnum.WeiXinAccessToken.ToString(), entity, TimeSpan.FromMinutes(timeDifference.TotalMinutes)); + + //插入日志 + var model = new SysTaskLog + { + createTime = DateTime.Now, + isSuccess = true, + name = "Redis无缓存", + parameters = "重新根据数据库有效数据更新缓存" + }; + await _taskLogServices.InsertAsync(model); + } - //插入日志 - var model = new SysTaskLog - { - createTime = DateTime.Now, - isSuccess = true, - name = "定时刷新获取微信AccessToken", - parameters = "无需刷新AccessToken,AccessToken 未过期" - }; - await _taskLogServices.InsertAsync(model); } } //微信小程序也刷新 @@ -214,7 +216,7 @@ namespace CoreCms.Net.Task else { var accessToken = WeChatCacheAccessTokenHelper.GetWxOpenAccessToken(); - if (string.IsNullOrEmpty(accessToken)) + if (string.IsNullOrEmpty(accessToken) && entity.expireTimestamp > DateTimeOffset.Now.ToUnixTimeSeconds()) { // 将时间戳转换为DateTime var expireTime = DateTimeOffset.FromUnixTimeSeconds(entity.expireTimestamp).DateTime; @@ -222,17 +224,19 @@ namespace CoreCms.Net.Task var timeDifference = expireTime - DateTime.Now; await _redisOperationRepository.SetAsync(GlobalEnumVars.AccessTokenEnum.WxOpenAccessToken.ToString(), entity, TimeSpan.FromMinutes(timeDifference.TotalMinutes)); + + + //插入日志 + var model = new SysTaskLog + { + createTime = DateTime.Now, + isSuccess = true, + name = "Redis无缓存", + parameters = "重新根据数据库有效数据更新缓存" + }; + await _taskLogServices.InsertAsync(model); } - //插入日志 - var model = new SysTaskLog - { - createTime = DateTime.Now, - isSuccess = true, - name = "定时刷新获取微信AccessToken", - parameters = "无需刷新AccessToken,AccessToken 未过期" - }; - await _taskLogServices.InsertAsync(model); } } }