Update WeChatAPI.java
parent
e8e7d397d5
commit
919e75f2b1
|
|
@ -12,35 +12,51 @@ import java.io.IOException;
|
||||||
|
|
||||||
public class WeChatAPI {
|
public class WeChatAPI {
|
||||||
private final Logger logger = LoggerFactory.getLogger(WeChatAPI.class);
|
private final Logger logger = LoggerFactory.getLogger(WeChatAPI.class);
|
||||||
|
/**
|
||||||
|
* 获取企业微信访问令牌
|
||||||
|
* @param corpid 企业ID
|
||||||
|
* @param corpsecret 企业密钥
|
||||||
|
* @return 返回获取到的访问令牌,如果获取失败则返回null
|
||||||
|
*/
|
||||||
public String getAccessToken(String corpid,String corpsecret){
|
public String getAccessToken(String corpid,String corpsecret){
|
||||||
|
// 创建OkHttpClient实例
|
||||||
OkHttpClient client = new OkHttpClient();
|
OkHttpClient client = new OkHttpClient();
|
||||||
|
|
||||||
|
// 设置请求URL并添加查询参数
|
||||||
String url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken";
|
String url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken";
|
||||||
HttpUrl.Builder urlBuilder = HttpUrl.parse(url).newBuilder();
|
HttpUrl.Builder urlBuilder = HttpUrl.parse(url).newBuilder();
|
||||||
urlBuilder.addQueryParameter("corpid", corpid);
|
urlBuilder.addQueryParameter("corpid", corpid);
|
||||||
urlBuilder.addQueryParameter("corpsecret", corpsecret);
|
urlBuilder.addQueryParameter("corpsecret", corpsecret);
|
||||||
|
|
||||||
|
// 构建请求
|
||||||
Request request = new Request.Builder()
|
Request request = new Request.Builder()
|
||||||
.url(urlBuilder.build())
|
.url(urlBuilder.build())
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
try (Response response = client.newCall(request).execute()) {
|
try (Response response = client.newCall(request).execute()) {
|
||||||
|
// 从响应中读取body内容
|
||||||
String responseBody = response.body().string();
|
String responseBody = response.body().string();
|
||||||
logger.info("get qyWeChat AccessToken responseBody: {}", responseBody);
|
logger.info("get qyWeChat AccessToken responseBody: {}", responseBody);
|
||||||
|
|
||||||
|
// 对响应内容进行JSON解析
|
||||||
ObjectMapper objectMapper1 = new ObjectMapper();
|
ObjectMapper objectMapper1 = new ObjectMapper();
|
||||||
QyWeChatGetAccessTokenApiResponse qyWeChatGetAccessTokenApiResponse = objectMapper1.readValue(responseBody, QyWeChatGetAccessTokenApiResponse.class);
|
QyWeChatGetAccessTokenApiResponse qyWeChatGetAccessTokenApiResponse = objectMapper1.readValue(responseBody, QyWeChatGetAccessTokenApiResponse.class);
|
||||||
|
// 检查是否获取令牌成功
|
||||||
if (qyWeChatGetAccessTokenApiResponse.getErrcode() == 0){
|
if (qyWeChatGetAccessTokenApiResponse.getErrcode() == 0){
|
||||||
logger.debug("get qyWeChat AccessToken Success");
|
logger.debug("get qyWeChat AccessToken Success");
|
||||||
|
// 返回访问令牌
|
||||||
return qyWeChatGetAccessTokenApiResponse.getAccess_token();
|
return qyWeChatGetAccessTokenApiResponse.getAccess_token();
|
||||||
} else {
|
} else {
|
||||||
|
// 记录获取令牌失败的日志
|
||||||
logger.error("getAccessToken error: {}",qyWeChatGetAccessTokenApiResponse.getErrmsg());
|
logger.error("getAccessToken error: {}",qyWeChatGetAccessTokenApiResponse.getErrmsg());
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
// 记录异常信息
|
||||||
logger.error("getAccessToken error:",e);
|
logger.error("getAccessToken error:",e);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue