参考文档
获取 Access token
代码实现
@Data
public class AccessToken {
private String accessToken;
private long expiresTime;
public AccessToken(String accessToken, String expiresIn) {
super();
this.accessToken = accessToken;
expiresTime = System.currentTimeMillis() + Integer.parseInt(expiresIn) * 1000L;
}
public boolean isExpired() {
return System.currentTimeMillis() > expiresTime;
}
}
public class GetToken {
private static final String GET_TOKEN_URL
="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET";
private static final String APPID = "123";
private static final String APPSECRET = "123";
private static AccessToken at;
private static void getToken(){
String url=GET_TOKEN_URL.replace("APPID",APPID).replace("APPSECRET",APPSECRET);
String tokenStr = http.get(url);
JSONObject jsonObject = JSON.parseObject(tokenStr);
String token = JSON.toJSONString(jsonObject.get("access_token"));
String expiresIn = JSON.toJSONString(jsonObject.get("expires_in"));
at=new AccessToken(token,expiresIn);
System.out.println(tokenStr);
}
public static String getAccesssToken(){
if (at==null||at.isExpired()){
getToken();
}
return at.getAccessToken();
}
}