仅当值存在时才向 Retrofit 添加查询

Add a query to Retrofit only if value exist

我正在尝试创建一个可以调用的端点:

...retailer/home

...retailer/home?uid=123123123

我使用下源码生成de调用:

@GET("retailer/home")
fun retrieveHomeContent(@Query("uid") uid: String? = null): Single<HomeContentEntity>

但是当我测试这个时,结果是:

retailer/home?uid=

所以,我不知道如何进行改造以在值为空时忽略查询。有什么建议吗?

我会使用 @QueryMap 而不是 @Query,如果您不想进行任何查询,我会将其传递为空 key/parameters

@查询参数支持可选字段。如果您不想传递值,只需传递 null。