Java使用OkHttps工具类调用外部接口 (3)

将所有的接口路径抽离为工具类,并且定义为常量,方便后期维护

/**
* 接口api路径
* @author gyk
* @date 2019-03-27 11:27
*/
public class WxPortApi {

/**
* 接口请求路径
*/
public final static String WX_API = "https://api.weixin.qq.com";
/**
* 学习栈appID
*/
public final static String WX_APP_ID = "";
/**
* 学习栈AppSecret
*/
public final static String AppSecret = "";
/**
* 获取access_token接口
*/
public final static String ACCESS_TOKEN = "/cgi-bin/token";
}

下来就是接口调用

创建package service

编写接口service层业务处理

/**
* 获取公众号的access_token
* @param appId --- 微信appId
* @param secret --- 微信秘钥
* @return
*/
public JsonObject getAccessTocken(String appId, String secret){
JsonObject resultJson = new JsonObject();
Map<String, String> params = new HashMap<>(3);
//赋值接口需传递参数
//获取access_token填写client_credential
params.put("grant_type", "client_credential");
// 第三方用户唯一凭证
params.put("appid", appId);
// 第三方用户唯一凭证密钥,即appSecret
params.put("secret", secret);
try {
//调用okHttps工具类进行接口调用
return OkHttpUtils.doPostRetJson(WxPortApi.WX_API + WxPortApi.ACCESS_TOKEN, params);
} catch (IOException e) {
//赋值失败结果
resultJson.addProperty("result","-1");
resultJson.addProperty("msg",msg +"获取access_token失败");
return resultJson;
}

}

然后编写单元测试

/**
* 测试获取公众号的access_token
*/
@Test
public void getAccessTocken() {
WxPortService wxPortService = new WxPortService();
JsonObject jsonObject = wxPortService.getAccessTocken(WxPortApi.WX_APP_ID, WxPortApi.AppSecret);
//获取错误码
String error_code = String.valueOf(jsonObject.get("errcode"));
//如果errcode 为空,那么证明获取的正确,不然获取失败
if("null".equals(error_code)){
//打印得到的access_token
System.out.println(String.valueOf(jsonObject.get("access_token")));
}

}

在这里有一个小坑大家要注意,java中String.valueOf() 如果你传入的是NULL 那么java会给你返回"Null" 字符串

剩下的微信接口对接将于后面进一步详细讲解

添加小编微信,加入技术交流群or招聘交流群

Java使用OkHttps工具类调用外部接口

QQ千人技术交流群: 710566091   一起学习一起成长

源码地址 https://gitee.com/DaiDaiDeXiaoMaNong/port.git

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzswff.html