OkGo的簡單使用

2021-09-24 04:12:22 字數 2599 閱讀 3497

okgo這個框架可能很多人聽過,但是okhttp開發安卓的人士一定聽過,可能還在使用。現在最火的兩個框架乙個是okhttp另乙個是retrofit,retrofit用過一次感覺不太好,主要是我沒有封裝好,用起來一點都不順,所以對retrofit就沒啥好感了。

閒話不多說我們進入正題

okgo使用步驟:

一、導包

github專案:

android studio使用者

一般來說,只需要新增第乙個okgo的核心包即可,其餘的三個庫根據自己的需要選擇新增!!!

//必須使用

compile 'com.lzy.net:okgo:3.0.4'

//以下三個選擇新增,okrx和okrx2不能同時使用

compile 'com.lzy.net:okrx:1.0.2'

compile 'com.lzy.net:okrx2:2.0.2'  

compile 'com.lzy.net:okserver:2.0.5'

一般來說,至少需要okhttp、okio、okgo三個jar包,其餘的三個擴充套件jar包根據自己的需要選擇新增!!!

必須使用

以下三個選擇新增,okrx和okrx2不能同時使用

okrx-1.0.2.jar

okrx2-2.0.2.jar

okserver-2.0.5.jar

二、初始化

三、請求網路資料 (這裡要注意了params()這個方法可以傳遞map集合   如果你使用這樣穿第引數的話會接收不到返回結果  你可以用httpparams()物件包一層就好了)

get方式:    

okgo.get(urls.url_method)//

.tag(this)//

.headers("header1", "headervalue1")//

.params("param1", "paramvalue1")//

.execute(new stringcallback()

@override

public void onerror(responseresponse)

});post方式:(這裡要注意了params()這個方法可以傳遞map集合   如果你使用這樣穿第引數的話會接收不到返回結果  你可以用httpparams()物件包一層就好了)

okgo.post("")//

.tag(this)//

.headers("header1", "headervalue1")//

.params("uid", "paramvalue1")//

.ismultipart(true)         //強制使用 multipart/form-data 表單上傳(只是演示,不需要的話不要設定。預設就是false)

.execute(new stringcallback()

@override

public void onerror(responseresponse)

});注意:上面有一settag()方法看起來沒啥用 其實他是用來取消網路請求用的 ,傳遞的引數就是這次網路的標識。那如何中

斷此次請求呢

四、檔案上傳(這裡要注意了params()這個方法可以傳遞map集合   如果你使用這樣穿第引數的話會接收不到返回結果  你可以用httpparams()物件包一層就好了)

//拼接引數

okgo.post("")//

.tag(this)//

.headers("header1", "headervalue1")//

.headers("header2", "headervalue2")//

.params("param1", "paramvalue1")//

.params("param2", "paramvalue2")//

//                .params("file1",new file("檔案路徑"))   //這種方式為乙個key,對應乙個檔案

//                .params("file2",new file("檔案路徑"))

//                .params("file3",new file("檔案路徑"))

.addfileparams("filename", files)           // 這種方式為同乙個key,上傳多個檔案

.execute(new jsoncallback()

@override

public void onsuccess(responseresponse)

@override

public void onerror(responseresponse)

@override

public void uploadprogress(progress progress)

});基礎開發的網路請求在上面都有了想要詳細的請到這

vcbuild的簡單使用

vcbuild 命令列 更新 2007 年 11 月 vcbuild 工具使用以下命令列語法來生成 visual c 專案和解決方案。複製 vcbuild options project solution config all 標誌 options生成選項。有關更多資訊,請參見 vcbuild 選項...

QList的簡單使用

qlistlist list 1 2 3 4 5 6 7 8 qlist的插入 voidinsert int i,const t value 在qlist其中某個位置插入value,假如沒 宣告i i 預設size 及在最後插入value iteratorinsert iterator before...

QTreeWidget的簡單使用

qtreewidget是一種樹形的部件,它以樹的形式顯示各個項,它的每個項使用qtreewidgetitem來表示。qtreewidgetitem的值的表示都是用qstringlist來表示的。簡單的說明一下 for int i 0 i 3 i for int i 0 i 3 i treewidge...