当前位置: 首页 > news >正文

http库 之 OKHttpUtil

源码位置

方便实用,个人感觉不错

依赖

<dependency><groupId>io.github.admin4j</groupId><artifactId>common-http-starter</artifactId><version>0.7.5</version>
</dependency>

代码实践

/*** 通用http的post接口,返回body的JsonNode对象* @param URI 资源地址* @param object post请求参数,requestBody*/
private JsonNode CommonHttpRequest(String URI, Object object){JsonNode data = null;try {//BaseURL为配置文件中配置的内容Response post = HttpUtil.post(BaseURL + URI, object);if (post == null || post.body() == null){log.error("no response, post or body is null");throw new Exception("no response");}//测试环境为springboot 2.x,所以使用的jacksonObjectMapper objectMapper = new ObjectMapper();JsonNode jsonNode = objectMapper.readTree(Objects.requireNonNull(post.body(), "No Response From server").string());log.info("response: {}", jsonNode);int code = jsonNode.get("code").asInt();if (code != 200){log.error("Request failed, code: [{}]", code);throw new Exception("server code error");}data = jsonNode.get("data");}catch (Exception e){log.error("Http process failed.", e);throw new BusinessException(CodeEnum.SYSTEM_EXCEPTION);}return data;
}

以上只是我写的一个测试函数,具体使用还是要看一下源码.
在这里插入图片描述

http://www.lryc.cn/news/125669.html

相关文章:

  • gitlab合并新项目和分支切换
  • WebStorm修改默认打开的浏览器
  • vue3+vite+pinia
  • ROSpider机器人评测报告
  • 在vue3 中,使用element-plus中的el-scrollbar,让内容元素自动滚动
  • Redis——Redis.conf详解+Redis持久化(RDB和AOF)+Redis订阅发布
  • 16.1.2 Linux 的多用户多任务环境
  • 【11】Redis学习笔记 (微软windows版本)【Redis】
  • 数据结构刷题训练:用栈实现队列(力扣OJ)
  • 数字化车间mes生产执行管理系统
  • SpringBoot + Mybatis多数据源
  • ad+硬件每日学习十个知识点(35)23.8.15 (接口电路:RS232、RS485、RS422,单线协议UART->TTL)
  • sql类型-用户定义表类型
  • 小程序 vant 项目记录总结 使用 scss 分享 订阅消息 wxs 分包 echarts图表 canvas getCurrentPages页面栈
  • 关于Power Query中一些忽略的细节
  • QML与C++交互
  • Microsoft ISA服务器配置及日志分析
  • Openlayers 实战 - 地图视野(View)- 图层 -(layer)- 资源(source)显示等级设置。
  • Linux:shell脚本 正则表达式与AWK
  • Android UI自动化测试框架—SoloPi简介
  • Android Studio Giraffe 正式版下载地址
  • 【C语言】调试技巧
  • MySQL SUBSTRING_INDEX() 函数的详细介绍
  • 开源数据库Mysql_DBA运维实战 (DML/DQL语句)
  • 【LangChain】Memory
  • Java并发编程(六)线程池[Executor体系]
  • macOS CLion 使用 bits/stdc++.h
  • PS出现的问题——为什么PS另存的格式少了很多
  • 【Linux】进程通信篇Ⅱ:共享内存、消息队列、信号量
  • 8.14 校招 内推 面经