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);
相关推荐
.Shu.1 小时前
计算机网络 TLS握手中三个随机数详解
网络·计算机网络·安全
于冬恋9 小时前
RabbitMQ高级
服务器·网络·rabbitmq
tan77º10 小时前
【Linux网络编程】分布式Json-RPC框架 - 项目设计
linux·服务器·网络·分布式·网络协议·rpc·json
.Shu.11 小时前
计算机网络 各版本TLS握手的详细过程
网络·计算机网络
半路_出家ren11 小时前
路由综合实验RIP,OSPF,BGP
网络·网络协议·rip·ospf·ebgp·ibgp
张太行_13 小时前
网络SSL/TLS协议详解
网络·web安全·ssl
重启的码农13 小时前
NAT穿透技术:原理、实现与应用全景解析
网络协议
zhysunny13 小时前
Day22: Python涡轮增压计划:用C扩展榨干最后一丝性能!
c语言·网络·python
hhzz13 小时前
重温 K8s 基础概念知识系列八( K8S 高级网络)
网络·容器·kubernetes
VVVVWeiYee15 小时前
TCP/UDP详解(一)
运维·网络·tcp/ip·udp·信息与通信