簡體   English   中英

retrofit 方法中的可選參數

[英]Optional parameter in retrofit method

我有兩種方法:

@POST("/example")
fun getSomething(@Body string: String)

@POST("/example")
fun getSomethingWithHeader(@Body string: String, @Header header: String)

有時我不得不用 header 發布,有時不用,它可以工作,但在我看來它可能是一種方法,尤其是對於 kotlin 默認參數。

但是像:

@POST("/example")
fun getSomethingWithHeader(@Body string: String, @Header header: String = "")

可能還會發送 header 但為空。

是否可以將這 2 種方法合並為 1 種方法?

像這樣將 header 定義為可為空:

@POST("/example")
fun getSomethingWithHeader(
    @Body string: String, 
    @Header("YourHeader") header: String? = null
)

來自https://square.github.io/retrofit/

如果值為 null,則將省略 header。 否則,將對該值調用 toString 並使用結果。

我認為在 Kotlin 中你可以像這個例子一樣構建

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM