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);
相关推荐
若风的雨8 小时前
【deekseek】P2P通信路由过程
服务器·网络协议·p2p
inputA9 小时前
【LwIP源码学习6】UDP部分源码分析
c语言·stm32·单片机·嵌入式硬件·网络协议·学习·udp
zizisuo9 小时前
面试篇:Spring Security
网络·数据库·安全
玉笥寻珍9 小时前
Web安全渗透测试基础知识之HTTP参数污染篇
网络·网络协议·安全·web安全·http
GCKJ_08249 小时前
观成科技:加密C2框架Vshell流量分析
网络·科技·信息与通信
玉笥寻珍10 小时前
Web安全渗测试基础知识之SSL交互异常利用篇
网络协议·安全·web安全·网络安全·交互·ssl
大蚂蚁2号11 小时前
windows文件共享另一台电脑资源管理器网络文件夹无法找到机器
运维·服务器·网络
LetsonH11 小时前
Home Assistant 米家集成:开启智能家居新体验
网络·智能家居
欧先生^_^12 小时前
Docker 的各种网络模式
网络·docker·容器
what_201812 小时前
分布式2(限流算法、分布式一致性算法、Zookeeper )
分布式·网络协议·rpc