本文针对前端调用后端接口时出现的“Required request body is missing”报错进行分析。该错误通常由前端请求配置不当引起,特别是将本应放在请求体(body)中的数据错误地通过查询参数(params)传递。通过对比错误代码与修正后的代码,展示了将Axios请求中的params改为data的正确做法,从而解决后端无法接收数据的问题。
日常开发中曾遭遇一处小故障
完整报错信息如下:
Required request body is missing: public com.trs.common.core.domain.AjaxResult com.trs.document.controller.DocumentController.add(com.trs.document.domain.params.AddDocumentDTO)
该接口在Apifox测试中运行正常,故判定为前端接口配置存在疏漏。
修复方案如下:
报错核心含义为:必需的请求正文缺失。
查阅接口文档后确认,数据应置于请求体(body)中。

随后回溯检查接口代码,具体实现如下:
// 新增文档
export function addText(params) {
return request({
url: '/document/add',
method: 'post',
params
})
}
原代码使用了params进行传值,修改为以下代码即可:
// 新增文档
export function addText(data) {
return request({
url: '/document/add',
method: 'post',
data
})
}
重新执行测试,确认问题已解决。
总结
至此,关于前端接口报错Required request body is missing的解决办法介绍完毕。如需了解更多Required request body is missing相关内容,请搜索本站往期文章或继续浏览后续文章,感谢大家的支持!