Java获取微信AccessToken

使用 Java 获取微信开发中需要用到的 AccessToken,超精简~

需要准备的东西:appidsecret   (均可在微信公众平台后台获取)

我使用了 Spring Boot 作为开发框架。

建项目等基本步骤就跳过啦,直接上核心代码 ~ 


Spring Boot 启动器:

@Configuration
@SpringBootApplication
public class Application {

    public static void main(String[] args){
        SpringApplication.run(Application.class,args);
    }

    @Bean
    public RestTemplate getRestTemplate(){
        return new RestTemplate();
    }

}


然后是一个接口调用结果的 实体类:

public class AccessTokenResult implements Serializable{

    private String access_token;
    private Integer expires_in;
    private String errcode;
    private String errmsg;

    //省略相关的GetSet方法

}


核心代码 Controller:

@RestController
public class WeiXinSDKController {

    private static final String APPID = "你的APPID";
    private static final String SECRET = "你的SECRET";

    private String access_token;
    private Long access_token_updateTime;

    @Autowired
    private RestTemplate restTemplate;

    @GetMapping("getAccessToken")
    public String getAccessToken() throws Exception {
        return getAccessToken();
    }

    private String getAccessToken() {
        if (access_token != null && (access_token_updateTime + 5400000) > new Date().getTime())
            return access_token;
        AccessTokenResult accessTokenResult = restTemplate.getForObject(String.format("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s", APPID, SECRET), AccessTokenResult.class);
        if (accessTokenResult.getErrcode() == null || accessTokenResult.getErrcode().equals("0")) {
            access_token_updateTime = new Date().getTime();
            access_token = accessTokenResult.getAccess_token();
        } else System.out.println("error:" + accessTokenResult);
        return accessTokenResult.getAccess_token();
    }

}
使用 access_token_updateTime 这个变量主要是用来控制AccessToken的刷新间隔,因为微信返回的AccessToken只有两个小时的有效时间,所以代码中我设置的是每隔一个半小时就重新获取一次。




没了~



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值