okhttp分析

与Okhttp相关的网络连接有三种:RealConnection、ConnectionPool、Stre...OK HTTP的浅层架构分析责任链模式和OK HTTP的拦截器/retryandfolloupinterceptor-1的BridgeInterceptor拦截器-1的Okhttp/CacheInterceptor拦截器-1的connect Interceptor/OK HTTP/与OK HTTP相关的网络连接有三种类型:RealConnection、ConnectionPool和StreamAllocationOkhttp的CallServerInterceptor默认情况下,HTTP1.1启用长TCP连接 , 但所有请求都按顺序响应(这里,长连接可以理解为半双工协议 。

1、OKHTTP拦截器CallServerInterceptor的简单 分析OKHTTP异步和同步请求Simple 分析OKHTTP拦截器缓存策略Simple 分析OKHTTP拦截器connect Interceptor Simple分析Simple OK HTTP拦截器callserver Interceptor分析Simple OK HTTP拦截器bridge Interceptor分析Simple OK HTTP拦截器retryandfolloupinterceptor

2、OkHTTP、Retrofit中文乱码解决方法乱码的根本原因是客户端和服务器端的编码格式不一致 。客户端:大多数情况下,客户端的编码格式是UTF8 。服务器:服务器会根据不同的请求方式使用不同的编码格式 。例如,当请求方法为POST时,编码格式为UTF8;当请求方法为GET时,编码格式为ISO88591 。当请求方法是POST时,客户端和服务器端的编码格式是相同的,所以不存在乱码问题 。
【okhttp分析】
3、Okhttp使用过程中的TLS握手验证与HostName验证问题/accept-encoding问题...当我们使用https进行数据传输加密和身份验证时 , 在HTTP和TCP之间额外增加一层SSL/TLS来做这部分工作(确定TLS协议支持的版本,建立连接并交换证书以验证其有效性,最后由非对称加密和服务器返回的证书公钥生成一个零时密钥作为后续通信中的对称加解密通信数据) 。

/Image-4/Okhttp的浅层架构/ -1/Okhttp的责任链模式和拦截器/OK HTTP的retryandfolloupinterceptor/OK HTTP的bridge Interceptor分析Okhttp的CacheInterceptor拦截器分析Okhttp的ConnectInterceptor拦截器分析OK HTTP的网络连接与三类相关:RealConnection、ConnectionPool

4、探究OkHttpClient的运行原理(5---ConnectInterceptorConnectInterceptor是连接拦截器,与请求请求的拦截有关;查看ConnectInterceptor的拦截方法;ConnectInterceptor获取RetryAndFollowUpInterceptor中创建的streamAllocation实例,通过StreamAllocation获取HttpCodec和RealConnection实例对象,最后将相关对象参数传递给下一个拦截器;获取HttpCodec实例对象的方法;NewStream通过findHealthyConnection方法获取RealConnection实例对象,同时创建HttpCodec实例对象;继续调用findConnection方法获取RealConnection实例对象;findConnection方法主要做以下事情:首先获取定义的连接 。如果它是空的,从连接池中获取它 。如果还是空的,就改路线找 , 最后也不会创建了 。

    推荐阅读