改造 2 无效 return

Retrofit 2 void return

在 Retrofit 2 中,表示 http 方法的服务方法必须 return Call

Call 是一个泛型,它必须采用表示 http 方法的 return 对象的类型。

例如,

@GET("/members/{id}")
Call<Member> getMember(@Path("id") Long id);

对于删除等 http 方法,return不编辑任何内容。在这种情况下,应该向 Call?

提供什么参数

只需将类型设置为 Void。

@DELETE("/members/{id}")
Call<Void> removeMember(@Path("id") Long id);

如果您正在使用 Kotlin/Retrofit/Rxjava/RxKotlin

@Headers(JwtKeyTokenWithValue)
@DELETE("/members/{id}")
fun removeMember(@Path("id") Long id): Completable

并且可以通过这种方式订阅

apiManager
       .removeMember()
       .subscribe(
           { Timber.i { "Member Removed!" } },
           { t -> Timber.e(t)})