改造,callback204没有内容响应?

在Android上,我最初实现了一个像这样的Retrofit界面:

@DELETE(USER_API_BASE_URL + "/{id}") public void deleteUser(@Path("id") String id, Callback<User> callback); 

成功删除后,服务器返回204无内容。 这是导致callback触发失败, retrofit.RetrofitError: End of input at character 0 of ,因为它期待一个User对象与响应。

然后,我重写了这样的,使用Void而不是User

 @DELETE(USER_API_BASE_URL + "/{id}") public void deleteUser(@Path("id") String id, Callback<Void> callback); <-- VOID 

但是我从callback中得到了同样的错误。 什么是解决这个问题的正确方法? 谢谢。

Solutions Collecting From Web of "改造,callback204没有内容响应?"

如同其他答案中提到的, Retrofit 2.x不再具有ResponseCallback 。 你想使用Response<Void>types。

RxJava声明:

 @PUT Observable<Response<Void>> foo(); 

标准声明:

 @PUT Call<Response<Void>> bar(); 

杰克·沃顿在评论中指出了这个解决scheme。 使用ResponseCallback。

编辑:这个反应不再有效的改造<2。