package com.dlbridge.jadp.job; import com.alibaba.fastjson.JSONObject; import com.dlbridge.jadp.config.properties.WeiXin; import lombok.extern.log4j.Log4j2; import org.springframework.data.redis.core.ValueOperations; import org.springframework.http.ResponseEntity; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.web.client.RestTemplate; import javax.annotation.PostConstruct; import javax.annotation.Resource; @Component @Log4j2 public class WeiXinAccessToken { @Resource RestTemplate restTemplate; private static String ACCESS_TOKEN; @Resource WeiXin weiXin; @Resource private ValueOperations valueOperations; /*@Scheduled(fixedRate = 3600 * 1000) public void accessToken() { log.info("获取access_token..."); ResponseEntity forEntity = restTemplate.getForEntity("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&" + "appid=" + weiXin.getAppid() + "&secret=" + weiXin.getSecret(), String.class); log.info("appId:"+weiXin.getAppid()+",获取token结果:" + forEntity.getBody()); ACCESS_TOKEN = JSONObject.parseObject(forEntity.getBody()).getString("access_token"); log.info("access_token:" + ACCESS_TOKEN); valueOperations.set("micro_gk:access_token",ACCESS_TOKEN); }*/ @Scheduled(fixedRate = 1800 * 1000) public void accessToken() { ACCESS_TOKEN = (String) valueOperations.get("micro_gk:access_token"); log.info("获取access_token: " + ACCESS_TOKEN); } public static String getAccessToken(){ return ACCESS_TOKEN; } }