Retrofit2的簡單用法(一)

2021-07-24 08:01:41 字數 1791 閱讀 5119

進來研究了一下比較火的請求框架——retrofit2 。在retrofit的基礎上去其糟粕取其精華,具體的區別我在這就不一一舉例了,這篇文章只要是介紹一下retrofit2的簡單使用方法,和自己遇見的坑,不介紹深層次的東西。

首先我用的是androidstduio 直接配置路徑就可以了,eclipse的同學自己找jar包吧

compile 'com.squareup.retrofit2:retrofit:2.1.0'

compile 'com.squareup.retrofit2:converter-gson:2.1.0'

retrofit2的寫法是以介面形式展現的,和mvp的專案模式很符合。下面看看post請求,get請求真是很少用我就不介紹了。

public class loginservice

static retrofit retrofit

=new retrofit.builder().baseurl("")

.addconverte***ctory(gsonconverte***ctory.create()).build();

static loginservice.iloginservice iloginservice

=retrofit

.create(loginservice.iloginservice.class);

}

第一次看的同學肯定會蒙的,不明白這都是什麼,retrofit2的請求是離不開註解的。

@post 代表請求是post型別 同理get 可以加入請求位址的動態字尾來拼接 也可以在psot()方法中加@url string url 來動態傳參

@headers 是乙個請求頭,我這裡的後台是接受json格式的所以設定了json的請求頭 如果後台可以接受看k,v格式的可以用@formurlencoded的註解

@body 是乙個非表單請求體,如果不是json的可以用 @path @field @fieldmap 來代替

user的實體用來配合gson使用的

baseurl 是請求位址的固定值

addconverte***ctory 最重要 這裡可以有很多不動的工廠模式 具體我還沒有研究

下面把沒有介紹的註解給大家列一下

請求方法

請求標記

請求引數

使用的時候只需要呼叫介面就可以了

public void 

tomainactivity()

@override

public void

onfailure(callcall, throwable t)

});}

這裡我是使用的json資料型別傳給後台的,所以要用gson轉換一下,如果只是k,v的 不需要前面5行,只需要在介面方法裡傳對應引數就可以了。

e/log: ###200^^user 這是最後的列印結果

在使用的時候一定要先了解後台的接受資料格式,要不然請求就坑了還不知道是**錯了,如果有更深的理解會寫第二篇的。最後有興趣的同學可以通過安裝android studio gsonformat外掛程式,根據json格式自動生成乙個bean類 這樣可以方便很多

謝謝閱讀。

Retrofit2對https請求的實現(乾貨)

由於專案上傳到googleplay時被提醒傳輸資料方式不安全,故改用https加密傳輸。這裡我的專案裡用到retrofit2.2.0,但retrofit本身的okhttp不能直接請求證書不安全的https,所以得採取一些應急措施。首先我們在androidstudio裡的gradle依賴retrofi...

mysql的簡單用法 mysql簡單用法

刪除使用者 drop user jack drop比delete刪除的優勢在於drop可以刪除使用者的許可權,更加徹底 更改使用者名稱 rename user jack to jacknew 使用者的都存在與user表中,更改名稱,許可權不變 更改使用者密碼 update mysql.user se...

DMSFrame 之簡單用法(一)

1.dmsframe是乙個完整的orm框架,框架相對來說也比成熟了。使用上有些地方還是比較方便的。dll檔案大約300k左右,但卻可以支援各種方式的查詢,完全的linq化的方式書寫 更有利於維護。2.框架完全支援除錯時生成的sql語句跟蹤,你可以很清晰地看出是 的寫法出了問題。3.框架附加了完全支援...