-
源碼解析:
Request、Response、OkHttpClient都是builder模式
Response是有ResponseBody和響應(yīng)頭Headers組成的,同理reqeust
RequestBody有兩個實現(xiàn),有FormBody表單、MuyltipartBody上傳文件可以使用
Call讓HttpEngine真正執(zhí)行的東西
構(gòu)建好Request后,由HttpEngine執(zhí)行。
ConnectionPool是管理Connection的。CallBack需要響應(yīng)回調(diào)的時候?qū)崿F(xiàn)里面的兩個方法。
Dispatcher調(diào)度器,核心方法是executed方法,會將RealCall添加到隊列中,會通過HttpEngine去請求。
HttpEngine發(fā)請求、重發(fā)機制、response的構(gòu)建、
先去緩存里查看,沒有的話重新創(chuàng)建
核心方法是sendRequest()
OkHttpClinet將所有的類進行相關(guān)聯(lián),綜合做處理。
查看全部 -
okhttp:
查看全部 -
okhttp?uml
查看全部 -
okHttp執(zhí)行執(zhí)行流程
查看全部 -
靜態(tài)代碼塊初始化OkHttpClient 對象
設(shè)置支持https ,設(shè)置連接超時時間,設(shè)置讀取超時時間,設(shè)置寫入超時時間,設(shè)置允許重定向,
設(shè)置sslSocketFactory
查看全部 -
創(chuàng)建主線程的Handler:
new Handler(Looper.getMainLooper());
查看全部 -
CommonRequest用來創(chuàng)建各種個樣的請求對象
查看全部 -
定義請求參數(shù)類RequestParams,封裝請求參數(shù)
查看全部 -
DisposeDataHandle代碼實現(xiàn)
查看全部 -
由于有各種不同的響應(yīng)形式,所以定義一個DisposeDataHandle類來進行真正的響應(yīng)
查看全部 -
定義響應(yīng)接口
查看全部 -
如何將證書轉(zhuǎn)換成SSLSocketFactory
查看全部 -
封裝思路講解
查看全部 -
網(wǎng)絡(luò)模塊封裝的好處
查看全部 -
Callback對象運行在非UI線程,所有類似Handler的方法將結(jié)果發(fā)送回UI線程中處理
查看全部 -
okhttp通過構(gòu)建FormBody發(fā)送Post請求
查看全部 -
Dispatcher 負責將每個RealCall添加到請求隊列中(同步的、異步的)
ConnectionPool 負責管理所有的Http連接
RealCall負責調(diào)用HTTPEngine發(fā)起請求
Callback負責回調(diào)請求的結(jié)果
httpClient負責組織上述類的協(xié)同工作
查看全部 -
Dns 對象
查看全部 -
executed(RealCall call) 將RealCall 對象添加到異步隊列中
查看全部 -
Dispatcher分發(fā)器類,源碼帶讀
又有一個線程池成員變量
查看全部 -
recover() 重連方法
查看全部 -
sendRequest()發(fā)送請求
檢查緩存,無緩存才真發(fā)請求
查看全部
舉報