SpringBoot 项目使用hutool 工具进行 http 接口调用的处理方法
写作目的
在实际的开发过程中一个互联网的项目来说 ,有可能会涉及到调用外部接口的实际业务场景,原生的比如使用httpclient 也能够达到自己想要的结果处理 ,但是其实在实际开发的时候如果没有使用过类似的技术处理的话或多祸首可能会遇见问题所以这里我简单记录一下今天使用到的工具类: hutool 进行接口http 请求调用处理。
hutool简单介绍
关于hutool工具包其实本人使用的不多哈 ,这里面其实封装处理了大量的开发日常小工具方法:
时间格式化,时间转换,时间校验
http 接口调用
字符串格式化处理
国标加密....
对于一个稍微大型的项目来说是一个很好用的封装工具包('宝藏男孩'),更多的好东西需要大家去探索
实践
这里说明一下hutool封装了httpclient 也是能使用的但是它高度封装了,所以我使用的是
HttpRequest
灵活性更高!!!
引用依赖
<!-- hutool 工具包 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.7.7</version> </dependency> <!-- 测试类--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> </dependency>
post
简单接口调用
@Test public void huToolPost() { System.out.println("--------------------------------post请求-----------------------------------"); HashMap<String, String> paramMaps = new HashMap<>(4); paramMaps.put("pid", "463669875660294144"); paramMaps.put("mobile", "123456."); paramMaps.put("name", "123456."); paramMaps.put("message", ""); HttpResponse response = HttpRequest.post("http://192.168.99.202:8202/thySystem/pg-biz-sae/app/opinion/add") .header("Content-Type", "application/json") .header("token", "710515329923024896") .header("kong-request-id", "710515329923024896") .body(JSON.toJSONString(paramMaps)) .execute(); int status = response.getStatus(); System.out.println("请求响应状态码:" + status); String body = response.body(); System.out.println(body); JSONObject jsonObject = JSONObject.parseObject(body); Object msg = jsonObject.get("msg"); System.out.println(msg); Object code = jsonObject.get("code"); System.out.println(code); }
文件上传
/** * 文件上传测试 */ @Test public void huToolUploadFile(){ File f1 = new File("C:\Users\12043\Desktop\cat.jpeg"); File f2 = new File("C:\Users\12043\Desktop\cat.jpeg"); File[] files = new File[2]; files[0] = f1; files[1] = f2; HttpResponse response = HttpRequest.post("url") .form("param", "test") .form("key", files) .execute(); }
get 请求
@Test public void huToolGet(){ System.out.println("--------------------------------get请求-----------------------------------"); HashMap<String, Object> getParamMaps = new HashMap<>(5); getParamMaps.put("sortStr", "recordFlag,baseInfo.createTime"); getParamMaps.put("sortDirection", "ASC"); getParamMaps.put("filterStr", "flowAbleInfo.nodeId==craCheck"); getParamMaps.put("pageSize", 10); getParamMaps.put("pageNo", 0); HttpResponse getResponse = HttpRequest.get("http://192.168.99.202:8202/thySystem/pg-biz-sae/sae/list") .header("Content-Type", "application/json") .header("token", "710515329923024896") .header("kong-request-id", "710515329923024896").form(getParamMaps).execute(); int status1 = getResponse.getStatus(); System.out.println("请求响应状态码:" + status1); String body1 = getResponse.body(); System.out.println(body1); JSONObject jsonObject1 = JSONObject.parseObject(body1); Object msg1 = jsonObject1.get("msg"); System.out.println(msg1); Object code1 = jsonObject1.get("code"); System.out.println(code1); }
end
今天拖到很晚才写完这个,帮一个同事对接一个系统的短信集成推送平台刚好涉及国密3加密然后就使用hutool的http请求处理数据内容了。
到此这篇关于SpringBoot 项目 使用hutool 工具进行 http 接口调用的文章就介绍到这了,更多相关SpringBoot http 接口调用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
在Spring Boot2中使用CompletableFuture的方法教程
这篇文章主要给大家介绍了关于在Spring Boot2中使用CompletableFuture的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧2019-01-01Java多线程正确使用倒计时协调器CountDownLatch方法详解
这篇文章主要为大家介绍了Java多线程倒计时协调器CountDownLatch的正确使用方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-09-09Quarkus中ConfigSourceInterceptor的加密配置实现
这篇文章主要为大家介绍Quarkus中ConfigSourceInterceptor加密配置的实现方式,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-02-02解决FontConfiguration.getVersion报空指针异常的问题
这篇文章主要介绍了解决FontConfiguration.getVersion报空指针异常的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-06-06
最新评论