OkHttp3
square 開源的 http 工具類
專案地址:https://github.com/square/okhttp
文件介紹:http://square.github.io/okhttp/
介紹
HTTP/2 和 SPDY 支援允許所有用到同一個host的請求共享一個socket。
連線池減少請求延時 (如果 SPDY 不可用).
透明的GZIP支援,減少下載大小。
快取Response以減少網路去做完全重複的請求。
OkHttp在網路有問題的時候優秀表現:
- 它會靜默從常見的連線問題中恢復。
- 如果你的服有多個IP地址對應,OkHttp會在首次連線失敗的時候嘗試其他地址。
- OkHttp使用現代的TLS features (SNI, ALPN)) (安全傳輸層協議)來初始化連線, 並在握手失敗的時候倒回到TLS 1.0。
OkHttp 2.0的API設計為流式builders和immutability,同時支援同步阻塞呼叫和非同步回撥。
使用 OkHttp 無需重寫您程式中的網路程式碼。OkHttp實現了幾乎和java.net.HttpURLConnection一樣的API。如果你使用了 Apache HttpClient,則OkHttp也提供了一個對應的okhttp-apache 模組。
OkHttp支援Android 2.3和以上,對Java要求至少1.7。
對了,OkHttp還用了Okio來做快速I/O和可調整大小的buffer。
SPDY
SPDY協議是Google提出的基於傳輸控制協議(TCP)的應用層協議,通過壓縮、多路複用和優先順序來縮短載入時間。該協議是一種更加快速的內容傳輸協議。
TSL:
安全傳輸層協議(TLS)用於在兩個通訊應用程式之間提供保密性和資料完整性。該協議由兩層組成: TLS 記錄協議(TLS Record)和 TLS 握手協議(TLS Handshake)。
特點:
(1) 支援 SPDY(http://zh.wikipedia.org/wiki/SPDY)協議。SPDY 協議是 Google 開發的基於傳輸控制協議的應用層協議,通過壓縮,多路複用(一個 TCP 連結傳送網頁和圖片等資源)和優先順序來縮短載入時間。
(2) 如果 SPDY 不可用,利用連線池減少請求延遲
(3) Gzip 壓縮
(4) Response 快取減少不必要的請求
相關文章
- OKHttp3簡單使用HTTP
- OkHttp3原始碼分析[DiskLruCache]HTTP原始碼
- Http請求-okhttp3基本用法HTTP
- OkHttp3深入瞭解之InterceptorsHTTP
- OkHttp3原始碼分析[綜述]HTTP原始碼
- Spring Cloud feign使用okhttp3SpringCloudHTTP
- okhttp3 攔截器原始碼分析HTTP原始碼
- OkHttp3原始碼分析[快取策略]HTTP原始碼快取
- OkHttp3原始碼分析[任務佇列]HTTP原始碼佇列
- 【OkHttp3原始碼分析】(一)Request的executeHTTP原始碼
- 【OkHttp3原始碼分析】(二)Request的enqueueHTTP原始碼ENQ
- OkHttp3實現Cookies管理及持久化HTTPCookie持久化
- 淺析okHttp3的網路請求流程HTTP
- OkHttp3原始碼解析(一)之請求流程HTTP原始碼
- Tomcat配置Gizp 客戶端使用okHttp3Tomcat客戶端HTTP
- OkHttp3原始碼分析[複用連線池]HTTP原始碼
- okhttp3 請求頭不能為中文的坑HTTP
- OkHttp3原始碼解析(三)——連線池複用HTTP原始碼
- Android OkHttp3原始碼詳解——整體框架AndroidHTTP原始碼框架
- Android Retrofit 2.0(二)使用教程OkHttp3 + Gson + RxJavaAndroidHTTPRxJava
- OkHttp3簡單使用教程(一):請求和響應HTTP
- OkHttp3攔截器之ConnectInterceptor:短怎麼了HTTP
- Java程式設計架構實戰——OKHTTP3原始碼和設計模式(上篇)Java程式設計架構HTTP原始碼設計模式
- HTTP介面自動化經驗總結(五)Okhttp3 關於超時的設定HTTP
- 安卓okhttp3進行網路請求,一個簡單的登入頁面的實現安卓HTTP