Retrofit 動態引數(非固定引數、非必須引數)(Get、Post請求)

一葉飄舟發表於2016-08-01

關鍵詞:Retrofit 動態引數、非固定引數、非必須引數

有如下場景:

請求資料時:
1. 使用者未登入時,不帶引數userId;
2. 登入時帶上引數userId.

如下介面:

兩個介面,區別就在於有沒有『user_id』引數。

這樣做,總感覺有點羅嗦,體現不出Retrofit的優越性。有沒有更好的方法呢?當然有,那就是動態引數(其實很簡單)。

上面的兩個介面合併為一個:

使用

登入:

未登入:

Retrofit執行null值引數,如果在實際呼叫的時候傳一個null, 系統也不會出錯,會把這個引數當作沒有。

對於引數名稱不固定的情況也可以使用Map

當然,還可以支援固定引數與動態引數的混用

修改Header

固定新增Header

動態新增Header

多個Header

固定與動態的Header的混合

以上用法同樣適用於Post請求。

That’s all.

或許你對這個也感興趣:

Retrofit2.0 公共引數(固定引數)

打賞支援我寫出更多好文章,謝謝!

打賞作者

打賞支援我寫出更多好文章,謝謝!

任選一種支付方式

Retrofit 動態引數(非固定引數、非必須引數)(Get、Post請求) Retrofit 動態引數(非固定引數、非必須引數)(Get、Post請求)

相關文章