You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot访问Swagger接口报400请求体缺失问题求助

问题排查及解决方案

根因1:接口未指定请求方法,Swagger默认识别错误

你当前的@RequestMapping注解仅配置了路径,没有显式指定请求方法,部分版本的Swagger会默认将接口识别为GET请求,GET请求无法携带请求体,自然会触发请求体缺失的报错。而你在Postman中手动选择了POST方法并填入了请求体,所以可以正常调用。

修复方案:

将接口注解修改为显式指定POST方法,两种写法可选:

// 写法1:指定RequestMapping的method属性
@RequestMapping(value ="/idApi", method = RequestMethod.POST)
// 写法2:直接使用PostMapping注解(更简洁)
@PostMapping("/idApi")

根因2:Swagger界面参数填写错误

即使接口已经指定为POST方法,Swagger界面默认可能不会自动选中Request Body的JSON输入栏,如果你没有手动填入符合VerifyIdDTO结构的JSON参数,也会触发该报错。

修复方案:

在Swagger对应接口的测试页,找到Request body区域,点击Try it out后,填入符合格式的JSON示例:

{
  "id": "你的测试id值",
  "citizenship": "国籍信息"
}

再点击Execute即可正常调用。

根因3:Swagger依赖配置缺失

如果以上两种方案都无效,检查你项目的Swagger/OpenAPI依赖是否正确集成,有没有配置类遗漏了对@RequestBody注解的扫描识别。

内容的提问来源于stack exchange,提问作者user16764484

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 11:18:02