首页 > 其他分享 >okhttp之复习

okhttp之复习

时间:2023-02-14 11:23:20浏览次数:36  
标签:HTTP 复习 响应 OkHttp okhttp Interceptor 请求

一okhttp 

1.简介:

官方简介:OkHttp是一个默认高效的HTTP客户端

1、HTTP2支持允许对同一主机的所有请求共享一个套接字。

2、透明GZIP缩小了下载大小。

3、连接池减少了请求延迟。

4、响应缓存完全避免了网络重复请求。

5、请求失败自动重试主机的其他IP,自动重定向:当网络出现问题时,OkHttp的不断重试,它会默默地从常见的连接问题中恢复,如果您的服务有多个IP地址,如果第一次连接失败,OkHttp将尝试备用地址,这对于IPv4+IPv6和冗余数据中心中托管的服务是必要的,OkHttp支持现代TLS功能(TLS1.3、ALPN、证书固定),它可以配置为回退以实现广泛的连接。

6、好用的API:使用OkHttp很容易,它的请求响应API设计有流畅的构建器和不变性,它支持同步阻塞调用和带有回调的异步调用。

 

2. Okhttp请求流程图: 

3、其余次要类的简述

OkHttpClient:通信的客户端,用来统一管理发起请求与解析响应。

Call:Call是一个接口,它是HTTP请求的抽象描述,具体实现类是RealCall,它由CallFactory创建。

Request:请求,封装请求的具体信息,例如:url、header等。

RequestBody:请求体,用来提交流、表单等请求信息。

Response:HTTP请求的响应,获取响应信息,例如:响应header等。

ResponseBody:HTTP请求的响应体,被读取一次以后就会关闭,所以我们重复调用responseBody.string()获取请求结果是会报错的。

Interceptor:Interceptor是请求拦截器,负责拦截并处理请求,它将网络请求、缓存、透明压缩等功能都统一起来,每个功能都是一个Interceptor,所有的Interceptor最终连接成一个Interceptor.Chain,典型的责任链模式实现。

StreamAllocation:用来控制Connections与Streas的资源分配与释放。

RouteSelector:选择路线与自动重连。

RouteDatabase:记录连接失败的Route黑名单。

   

标签:HTTP,复习,响应,OkHttp,okhttp,Interceptor,请求
From: https://www.cnblogs.com/awkflf11/p/17118983.html

相关文章

  • 【C++复习】运算符重载中的特殊运算符
    无法被重载类属关系运算符 .成员指针运算符 .*作用域分辨符 ::三目运算符 ?:只能通过成员函数重载赋值运算符=方括号[]圆括号()指向结构体成员运算符->......
  • 【C++复习】同名函数判断条件(重载,隐藏,覆盖)
    1、重载以下条件要全部满足:函数名相同以下条件满足其1:函数形参数目不同函数形参类型不同注意:不看返回值调用形式要不同//下面两个函数不能重载fun(inta,......
  • ut之复习
    先简单了解一下单元测试,对软件中的最小可测试单元进行测试,一般是函数。接下来说说它的作用,(1)能够验证程序的准确性,为开发提供保障,能放心大胆的修改和重构。(2)能规范我们的设......
  • 【C++复习】运算符优先级(简)
    不同优先级的运算符混在一起,就根据优先级算相同优先级的运算符混在一起,就看它们的结合性(这里不谈)1、运算符有哪些?单目运算符*++自增,有前置和后置--自减,有前置和后置......
  • JavaScript的原型、原型链、异步与单线程复习回顾
     原型和原型链有对象的地方就有原型,每个对象都会在其内部初始化一个属性,就是prototype(原型),原型中存储共享的属性和方法。当我们访问一个对象的属性时,js引擎会先看当......
  • Java基础day6复习-Debug的学习
    1.Debug模式1.1什么是Debug模式是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序。1.2Debug模式操作流程如何加断点......
  • 期末复习 | CUMT数据结构实验期末——精简版题解
    前言该博客保存了博主本人的刷题记录,博客中题源来自学长博客和CUMTOJ,但是由于本人记性不好,忘记了CUMTOJ的密码TT,如有错误敬请指正!该博客的解题代码很大程度上参照了Acwi......
  • 期末复习 | CUMT数据结构理论
    数据结构复习基础知识O(1)<O(logn)<O(n)<O(nlogn)<O(n^2)<O(n^3)<O(2^n)线性表掌握顺序表的存储结构以及基本操作操作的代码实现以及它的优缺点——代码......
  • 期末复习 | CUMT计算机组成原理
    计算机组成原理期末复习提纲本复习提纲完全参考MaHaibo老师发的复习资料第一章计算机系统概论冯若依曼计算机组成主要设计思路:数制采用二进制,按照程序顺序进行主要组......
  • Python网络爬虫与数据挖掘——复习笔记
    目录\(\ttrequests\)库爬取页面\(\ttrequests\)库爬取搜索引擎\(\ttrequests\)库爬取网络图片\(\ttrequests\)库爬取页面importrequests#引入库url="...........