大坑,调用微信api最好使用jdk原生api,一开始用的ali的httputils,接口死活返回code已被使用,可能是httputils经过了两次转发
private String LOGIN_URL =
"https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=APPSECRET&js_code=JSCODE&grant_type=authorization_code";
private static final String APPID = "aaa";
private static final String APPSECRET = "xxx";
String url = LOGIN_URL.replace("APPID", APPID).replace("APPSECRET", APPSECRET).
replace("JSCODE", code);
logger.info("微信登录url:{}", url);
StringBuffer sb = null;
BufferedReader in = null;
try {
URL weChatUrl = new URL(url);
// 打开和URL之间的连接
URLConnection connection = weChatUrl.openConnection();
// 设置通用的请求属性
connection.setConnectTimeout(5000);
connection.setReadTimeout(5000);
// 建立实际的连接
connection.c