Android异常:Non-body HTTP method cannot contain @Body.

在使用Retrofit调用@DELETE接口的时候,会报如下错误

Non-body HTTP method cannot contain @Body.

这是因为

当使用Retrofit中的@DELETE注释来指定HTTP DELETE请求时,无法在请求体中使用@Body注释。这是因为HTTP DELETE请求通常不带请求体,因此不需要将请求体作为请求的一部分发送。

解决办法是自定义注解,用@HTTP注释,允许携带请求体。

修改如下:

java 复制代码
//    @DELETE(ACTION_HOME_DELETE)
    @HTTP(method = "DELETE", path = ACTION_HOME_DELETE,hasBody = true)
    Flowable<GeneralRes> deleteHome(@Body List<Long> req);
相关推荐
打不了嗝 ᥬ᭄10 小时前
传输层协议TCP
linux·服务器·网络·c++·tcp/ip
Rysxt_10 小时前
UDP请求解析教程:深入理解请求头、请求体与参数机制
网络·网络协议·udp
小马哥编程10 小时前
JWT 是由哪三个部分组成?如何使用JWT进行身份认证?
网络协议·http·架构·ssh
noravinsc11 小时前
https 可以访问 8866端口吗
网络协议·http·https
岛屿旅人11 小时前
英国国防部推进本土化开放架构建设
网络·人工智能·安全·web安全·架构
Unstoppable2211 小时前
八股训练营第 6 天 | HTTPS 和HTTP 有哪些区别?HTTPS的工作原理(HTTPS建立连接的过程)?TCP和UDP的区别?
tcp/ip·http·https·八股
重生之我在20年代敲代码11 小时前
【Linux网络编程】初识网络,理解TCP/IP五层模型
linux·运维·服务器·网络
称心-如意11 小时前
浅谈TCP与UDP协议:TCP和UDP分别是什么,区别在哪里
网络协议·tcp/ip·udp
努力学习的小廉12 小时前
深入了解linux网络—— 守护进程
linux·运维·网络
我是Feri13 小时前
HarmonyOS6.0开发实战:HTTP 网络请求与 API 交互全指南
网络·http·harmonyos·openharmonyos·harmonyos6.0