From 5dc04f3291c00d66f8733a49896612ea1e3b31c5 Mon Sep 17 00:00:00 2001 From: 罗元桥 <2376770955@qq.com> Date: 星期四, 16 九月 2021 13:19:14 +0800 Subject: [PATCH] Merge branch 'test' into 'zzj' --- springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/WxOfficialApi.java | 17 ++++++++++++----- 1 files changed, 12 insertions(+), 5 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/WxOfficialApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/WxOfficialApi.java index 226de90..6cdbafc 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/WxOfficialApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/WxOfficialApi.java @@ -9,6 +9,7 @@ import javax.annotation.Resource; +import com.panzhihua.common.api.LcApiConstants; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.data.redis.core.ValueOperations; import org.springframework.web.bind.annotation.GetMapping; @@ -157,6 +158,7 @@ public R pageDiscuss() throws Exception { WxOfficialApi officialApi = new WxOfficialApi(); + ValueOperations<String, String> valueOperations = stringRedisTemplate.opsForValue(); List<String> tokenList = new ArrayList<>(); if (!appidList.isEmpty()) { for (int i = 0; i < appidList.size(); i++) { @@ -168,10 +170,15 @@ } } } - List<JSONObject> resultList = new ArrayList<>(); + Boolean newsListKey = stringRedisTemplate.hasKey(UserConstants.NEWS_LIST); + if(newsListKey != null && newsListKey){ + String json = valueOperations.get(UserConstants.NEWS_LIST); + resultList = JSON.parseArray(json,JSONObject.class); + return R.ok(resultList); + } if (!tokenList.isEmpty()) { - tokenList.forEach(token -> { + for (String token:tokenList) { try { String url = "https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=" + token; String result = getActicle(url); @@ -185,13 +192,12 @@ String newsId = object.getString("media_id"); JSONObject contentJson = JSON.parseObject(object.getString("content")); List<JSONObject> newsItemList = - JSON.parseArray(contentJson.getString("news_item"), JSONObject.class); + JSON.parseArray(contentJson.getString("news_item"), JSONObject.class); String newsUrl = newsItemList.get(0).getString("url"); newsItemList.get(0).put("news_id", newsId); contentJson.put("news_item", newsItemList); object.put("content", contentJson); - ValueOperations<String, String> valueOperations = stringRedisTemplate.opsForValue(); valueOperations.set(UserConstants.NEWS_ID + newsId, newsUrl + "", 2, TimeUnit.DAYS); } } @@ -201,7 +207,8 @@ } catch (Exception e) { log.error("通过token获取文章列表失败,错误原因:" + e.getMessage()); } - }); + valueOperations.set(UserConstants.NEWS_LIST, resultList.toString(), 12, TimeUnit.HOURS); + } } return R.ok(resultList); } -- Gitblit v1.7.1