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);
相关推荐
叫醒你笛莎1 小时前
IGMP(Internet Group Management Protocol)与组播技术深度解析
网络
网络抓包与爬虫1 小时前
Wireshark——抓包分析
websocket·网络协议·tcp/ip·http·网络安全·https·udp
lulinhao1 小时前
HCIA/HCIP基础知识笔记汇总
网络·笔记
暴走的YH1 小时前
【网络协议】三次握手与四次挥手
网络·网络协议
yuzhangfeng1 小时前
【云计算物理网络】数据中心网络架构设计
网络·云计算
zhu12893035562 小时前
网络安全的重要性与防护措施
网络·安全·web安全
仙女很美哦2 小时前
Flutter视频播放、Flutter VideoPlayer 视频播放组件精要
websocket·网络协议·tcp/ip·http·网络安全·https·udp
网络研究院2 小时前
ChatGPT 的新图像生成器非常擅长伪造收据
网络·人工智能·安全·chatgpt·风险·技术·欺诈
路由侠内网穿透3 小时前
本地部署开源流处理框架 Apache Flink 并实现外部访问
大数据·网络协议·tcp/ip·flink·服务发现·apache·consul
Amos_ FAT3 小时前
关于串口协议的一点知识
经验分享·网络协议