Http框架OkHttps

系列文章目录


文章目录


前言

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。
在这里插入图片描述


OkHttps 是 2020 年开源的对 OkHttp3 轻量封装的框架,它独创的异步预处理器,特色的标签,灵活的上传下载进度监听与过程控制功能,在轻松解决很多原本另人头疼问题的同时,设计上也力求纯粹与优雅。

链式调用,一点到底

BaseURL、URL占位符、HTTP、WebSocket

JSON、Xml 等自动封装与解析,且支持与任意格式的数据解析框架集成

同步拦截器、异步预处理器、回调执行器、全局监听、回调阻断

文件上传下载(过程控制、进度监听)

单方法回调,充分利用 Lambda 表达式

TCP连接池、Http2

OkHttps 非常轻量(最新版仅 90KB),除 Okhttp 无第三方依赖,并且更加的开箱即用,API 也更加自然和语义化。

OkHttps 是一个纯粹的 Java 网络开发包,并不依赖 Android,这一点和 Retrofit 不同

OkHttps 用起来很优美,可以像 RxJava 那样链式用,却比 RxJava 更简单。
在这里插入图片描述
官网:https://okhttps.ejlchina.com/

gitee:https://gitee.com/ejlchina-zhxu/okhttps

入门使用,首先Maven引入

<dependency>
    <groupId>com.ejlchina</groupId>
    <artifactId>okhttps</artifactId>
    <version>3.4.2</version>
</dependency>

玩RESTful的人都会需要不同的HTTP请求方式,框架都是支持的,如下说明
在这里插入图片描述
多种请求方式,多种回调函数,WebSocket支持,自定义构建,请求取消,框架的使用具体请参考其官网说明,非常详细。

这里只是作一个简单GET请求,来演示其使用的简洁性。

import com.ejlchina.okhttps.HTTP;
public class HttpOkUtil {
    public static void main(String[] args) {
        HTTP http = HTTP.builder().build();
        System.out.println(http.sync("http://www.javacui.com/")
                .get().getBody().toString());
    }
}

其sync是一个同步请求,返回一个SHttpTask对象,打开SHttpTask源码,可以看到其对各种请求的支持,这里用Get请求。

在这里插入图片描述
其返回的是HTTPResult对象,打开该对象的源码,它的State就是执行状态,Body就是响应体,这里拿到报文体后直接ToString即可。

上面代码将会返回本博客首页的HTML代码。

一般我们后端开发都是基于接口的,返回的都是基于JSON或者XML,那么我们就要选择其依赖的版本即可,比如与 fastjson 一起使用

<dependency>
     <groupId>com.ejlchina</groupId>
     <artifactId>okhttps-fastjson</artifactId>
     <version>3.4.2</version>
</dependency>

起他参考官网,使用时也很简单

List<User> users = http.sync("/users") // http://api.example.com/users
        .get()                         // GET请求
        .getBody()                     // 获取响应报文体
        .toList(User.class);           // 得到目标数据

当然,OkHttps 自 v2.0 后开始支持自定义消息转换器,并且可以添加多个,同样,具体参考官网。

相关推荐

  1. Android - OkHttp 访问 https 的怪问题

    2024-04-25 14:34:04       13 阅读
  2. Okhttp 发送https请求,忽略ssl认证

    2024-04-25 14:34:04       8 阅读
  3. <span style='color:red;'>OkHttp</span>

    OkHttp

    2024-04-25 14:34:04      17 阅读
  4. okhttp

    2024-04-25 14:34:04       11 阅读
  5. Android okhttp3.0配置https信任所有证书

    2024-04-25 14:34:04       37 阅读
  6. 解决okhttp无法调用HTTP协议的接口问题

    2024-04-25 14:34:04       20 阅读
  7. okHttphttps请求忽略ssl证书认证

    2024-04-25 14:34:04       3 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-25 14:34:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-25 14:34:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-25 14:34:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-25 14:34:04       18 阅读

热门阅读

  1. 爬虫工具-推广-推广链接

    2024-04-25 14:34:04       14 阅读
  2. 面试算法十问(中英文)

    2024-04-25 14:34:04       15 阅读
  3. 装饰器模式

    2024-04-25 14:34:04       12 阅读
  4. 面试算法十问2(中英文)

    2024-04-25 14:34:04       16 阅读
  5. Copula(3)

    2024-04-25 14:34:04       13 阅读
  6. Android 学习 鸿蒙HarmonyOS 4.0 第一天

    2024-04-25 14:34:04       13 阅读
  7. linux 驱动编程笔记

    2024-04-25 14:34:04       12 阅读
  8. vue里面事件修饰符.prevent使用案例

    2024-04-25 14:34:04       13 阅读
  9. leveldb中THREAD_ANNOTATION_ATTRIBUTE__宏的作用

    2024-04-25 14:34:04       14 阅读
  10. 深入解读Dubbo:微服务RPC框架的佼佼者

    2024-04-25 14:34:04       18 阅读
  11. 基于Splinter演示如何使用Chrome WebDriver

    2024-04-25 14:34:04       17 阅读