Kotlin 在带有改装的条件下,在URL路径中添加参数
我创建了一个API,如下所示:Kotlin 在带有改装的条件下,在URL路径中添加参数,kotlin,interface,retrofit,okhttp,Kotlin,Interface,Retrofit,Okhttp,我创建了一个API,如下所示: interface listProd { @GET("v1/{type}") fun getProduct( @Path("type") type: String): Observable<Response> } 接口列表prod{ @获取(“v1/{type}”) 趣味产品( @路径(“类型”)类型:字符串):可观察 } 现在我需要添加一个参数,如下所示: interface listProd { @GET("v1/{ty
interface listProd {
@GET("v1/{type}")
fun getProduct(
@Path("type") type: String): Observable<Response>
}
接口列表prod{
@获取(“v1/{type}”)
趣味产品(
@路径(“类型”)类型:字符串):可观察
}
现在我需要添加一个参数,如下所示:
interface listProd {
@GET("v1/{type}?preview=true")
fun getProduct(
@Path("type") type: String): Observable<Response>
}
接口列表prod{
@获取(“v1/{type}?preview=true”)
趣味产品(
@路径(“类型”)类型:字符串):可观察
}
但我不想一直拥有它。我们的目标是看看如何添加?preview=true
在布尔条件下,我不希望有多个接口,但希望有一个智能的方法来添加或不添加它
该条件可以是getProduct
中的布尔传递,它触发的追加或不追加?preview=true
有什么想法吗
谢谢您应该能够为此使用可选的查询参数:
@GET("v1/{type}")
fun getProduct(
@Path("type") type: String,
@Query("preview") preview: Boolean?
): Observable<Response>
@GET(“v1/{type}”)
趣味产品(
@路径(“类型”)类型:字符串,
@查询(“预览”)预览:布尔值?
):可见
需要注意的是,传入
true
或false
将包含该参数,而null
将完全忽略该参数。如果不需要,我希望避免在路径中显示参数。