OkHttp框架的初步了解

2021-09-24 01:46:15 字數 2517 閱讀 7604

簡介:乙個處理網路請求的開源專案,是安卓端最火熱的輕量級框架,由移動支付square公司貢獻,用於替代httpurlconnection和apache httpclient。okhttp可以支援安卓2.3及以上版本,需要jdk1.7及以上;okhttp有2.x和okhttp3.x版本之間的部分方法的使用有一點的差異。

//可以修改版本號

"andriod.premission.internet"

/>

<

!--使用者連線網路許可權--

>okhttp的初次學習需要掌握的基本類有:okhttpclient、requestbody、request、call和response… …

對於該類建立物件例項化的方式有兩種:標準預設型還有自定義的形式

//標準形式:

;//自定義形式:

)//為新連線設定預設連線超時時長,第乙個引數時大小,第二個引數是單位

.readtimeout(10

,timeutil.

seconds

)//設定新連線的預設讀取超時時長

.writetimeout(10

,timeutil.

seconds

)//設定新連線的預設寫入超時時長

.cache

(setcache)

//設定用於讀取和寫入快取響應的響應快取 [1]

.build()

;

[1]

:引數為cache物件

file filepath =

newfile

(getexternalcachedir()

,"netcache");

int cachesize =10*

1024

*1024

; cache setcache =

newcache

(filepath,cachesize)

;注:在okhttp2.

+的版本中設定以上的超時的方法與3.

+版本不同:

該類用於生成網路連線請求物件,包括多中資訊:請求引數,請求頭,請求方式…

常用方法有:url、post、method、headers等方法

request mrequest =

newrequest.builder()

.url

("").

post

(mrequestbody)[4

].build()

;/*[4]:如果不顯示呼叫post方法,該此網路請求將使用get方式請求網路,其中的引數是請求體物件的示例,使用post方式上傳資料比get方式更安全,資料大小不受

限制,可以傳遞更多的引數(對於長表單資料,上傳檔案很好用)*/

3、response:

該類是網路請求後的響應資訊物件,對於伺服器返回的資料均存放在該示例物件中,而且對於response例項一次請求中只能有一次有效呼叫,如果呼叫兩次將會出現程式錯誤,因此,這就使得在需要多次使用資料前就要將response例項中的資料儲存下來,response類提供了多種方法:body、code、protocol、request、issuccessful、headers(響應頭物件)、tostring…

response mresponse = mcall.

execute()

;if(mresponse.

issuccessful()

)件,這是就與第2點聯絡起來了,第二點中的requsetbody的例項方法可以將本地檔案「放置」到請求體中,這是,伺服器端在接收引數時就可以得到使用者上傳的檔案資料*/

初步學習OkHttp

寫在最前面 用於個人學習,資料 於 第一行 郭霖 著 和 okhttp教程 url 或者呼叫string變數 build 同步方法 response response client.newcall request execute 非同步方法 client.newcall request enqueu...

okhttp框架學習

整合和 預設是get請求 根據天氣id請求城市天氣資訊。public void requestweather final string weatherid else swiperefresh.setrefreshing false override public void onfailure cal...

CCIE學習筆記框架 網路的初步了解

網路的定義 1 網路起源 阿帕網 美國 軍用通訊網 2 網路作用 連線,傳輸 l1 共享,平台 l2 3 網路元件 a 網路裝置 i.路由器router 企業級 運營商用 商用 使用者級 ii.交換機switch iii.無線接入點ap accesspoint iv.防火牆firewall juni...