如何在改造中发送带有正文的 HTTP 删除?

新手上路,请多包涵

当我尝试创建删除方法时:

 public interface ImageService {
    @DELETE("api/v1/attachment")
    Call<BaseResponse> delete(@Body DeleteModel deleteModel);
}

我从堆栈跟踪中得到基本上归结为这些行的错误:

 E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.RuntimeException: Failure delivering result
java.lang.IllegalArgumentException: Non-body HTTP method cannot contain @Body.
Caused by: java.lang.IllegalArgumentException: Non-body HTTP method cannot contain @Body.

如何将正文添加到删除方法?

我在这里搜索但发现 3 个不是答案,也没有使用改造。

原文由 HopefullyHelpful 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 339
2 个回答

一个更简化的答案。

 @HTTP(method = "DELETE", path = "/api/analysis_delete", hasBody = true)
Call<Analysis_Delete_RequestResult_Api10> analysis_delete_api10(@Field("seq") String seq);

这样就可以了。

原文由 March3April4 发布,翻译遵循 CC BY-SA 4.0 许可协议

这是我的版本

@HTTP(method = "DELETE", path = "{login}", hasBody = true)
Call<ResponseBody> getData(@Path("login") String postfix, @Body Map<String, Object> options);

原文由 Sharanjeet Kaur 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题