From 06dfa1847f94fdaf5a60ccb7f4fee00e0fc90f43 Mon Sep 17 00:00:00 2001 From: mh Date: Wed, 4 Dec 2024 09:24:14 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E5=A4=8D=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E6=A8=A1=E6=9D=BF=E6=B6=88=E6=81=AFaccessTok?= =?UTF-8?q?en=E7=BC=93=E5=AD=98=E9=97=AE=E9=A2=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mh/user/controller/TestController.java | 11 ++++++++ .../wechat/impl/WechatServiceImpl.java | 28 +++++++++---------- .../java/com/mh/user/utils/CacheUtil.java | 3 +- 3 files changed, 27 insertions(+), 15 deletions(-) diff --git a/user-service/src/main/java/com/mh/user/controller/TestController.java b/user-service/src/main/java/com/mh/user/controller/TestController.java index d701b21..03b3c1e 100644 --- a/user-service/src/main/java/com/mh/user/controller/TestController.java +++ b/user-service/src/main/java/com/mh/user/controller/TestController.java @@ -2,6 +2,7 @@ package com.mh.user.controller; import com.mh.user.constants.Constant; import com.mh.user.entity.DeviceCodeParamEntity; +import com.mh.user.job.PushDataToWechatJob; import com.mh.user.manage.QuartzManager; import com.mh.user.service.SysUserService; import com.mh.user.utils.AnalysisReceiveOrder485; @@ -15,6 +16,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; @RestController +@RequestMapping("/test") public class TestController { @Autowired @@ -23,6 +25,15 @@ public class TestController { @Resource QuartzManager quartzManager; + @Resource + private PushDataToWechatJob pushDataToWechatJob; + + @GetMapping("/pushDataToWechat") + public String pushDataToWechat() throws Exception { + pushDataToWechatJob.pushDataToWechat(); + return "推送成功"; + } + @RequestMapping("/hello") public String HelloWord() throws SchedulerException, InterruptedException { // 停止JobTest diff --git a/user-service/src/main/java/com/mh/user/service/wechat/impl/WechatServiceImpl.java b/user-service/src/main/java/com/mh/user/service/wechat/impl/WechatServiceImpl.java index 25fedfb..dbf665b 100644 --- a/user-service/src/main/java/com/mh/user/service/wechat/impl/WechatServiceImpl.java +++ b/user-service/src/main/java/com/mh/user/service/wechat/impl/WechatServiceImpl.java @@ -49,20 +49,20 @@ public class WechatServiceImpl implements WechatService { // 判断cache中是否存在access_token CacheUtil instance = CacheUtil.getInstance(); Cache cache = instance.getCache("accessToken"); - String accessToken = "86_6rbcAo1LkDnWs4F6gDeTQErw741yVj8NPBMsYqRIM13mW4Jx7F1OeaKbcHS7lNyjSqSxhJj1INRLAfA-ygtzncC-G3lWtrqLnSfO6lOX47EQ_O4TjqrCy4mVnfcEUPcAIAAQL"; -// if (cache != null ) { -// log.info("cache中存在access_token,直接使用"); -// accessToken = cache.getIfPresent("accessToken").toString(); -// } else { -// String tokenResult = restTemplate.getForObject(wechatMpConfig.getAccessTokenUrl(),String.class); -// JSONObject jsonObj = JSONObject.parseObject(tokenResult); -// if (jsonObj == null || !jsonObj.containsKey("access_token")) { -// return; -// } -// accessToken = jsonObj.get("access_token").toString(); -// log.info("获取access_token==>{}", accessToken); -// instance.createCache("accessToken", 6000, TimeUnit.SECONDS); -// } + String accessToken = ""; + if (cache != null ) { + log.info("cache中存在access_token,直接使用"); + accessToken = cache.getIfPresent("accessToken").toString(); + } else { + String tokenResult = restTemplate.getForObject(wechatMpConfig.getAccessTokenUrl(),String.class); + JSONObject jsonObj = JSONObject.parseObject(tokenResult); + if (jsonObj == null || !jsonObj.containsKey("access_token")) { + return; + } + accessToken = jsonObj.get("access_token").toString(); + log.info("获取access_token==>{}", accessToken); + instance.createCache("accessToken", accessToken , 6000, TimeUnit.SECONDS); + } // 封装推送内容 JSONObject jsonObject = new JSONObject(); jsonObject.put("touser",pushMsgEntity.getTouser()); diff --git a/user-service/src/main/java/com/mh/user/utils/CacheUtil.java b/user-service/src/main/java/com/mh/user/utils/CacheUtil.java index bff3467..0cf63db 100644 --- a/user-service/src/main/java/com/mh/user/utils/CacheUtil.java +++ b/user-service/src/main/java/com/mh/user/utils/CacheUtil.java @@ -38,10 +38,11 @@ public class CacheUtil { * @param unit 时间单位 * @return 缓存ID */ - public void createCache(String key, long expireAfterWrite, TimeUnit unit) { + public void createCache(String key, String value, long expireAfterWrite, TimeUnit unit) { Cache cache = Caffeine.newBuilder() .expireAfterWrite(expireAfterWrite, unit) .build(); + cache.put(key, value); caches.put(key, cache); }