irpas技术客

【解决前端报错】Bad Request: Required request parameter ‘id‘ for method parameter type L

未知 2999

后端查询列表接口返回的对象里包含Long id,前端获取到这个id,执行通过Long id删除操作。这时删除操作报错400,大意是没找着Long类型的id.

swagger相关接口截图: Long类型的在swagger显示是integer64 , integer是integer32. 这是前端请求后,出现在我的后端console控制台的报错信息。 前端部分代码如下图所示: 也许问题出现在接口的参数传递上,接收的参数是urlencode编码格式还是json编码格式?

这时我突然意识到,或许前端获取了一条数据后,在获取这条数据的某个字段值时没有把相应的字段值类型转化为json格式,而作为一个接口而言,只认识 json 格式的入参。这就导致了上面的报错,没有需要的值存在。 比如获取了一条 User 类型的数据,把其中的 Long Id 单独取出来作为入参传给接口,这时需要把Long Id转换成Json格式。得用 json.Stringfy(id)将其转为json的字符串格式传入。

导这个包

前端可以尝试用qs.stringfiy、json.Stringfy() 来重新编码参数。

相关链接1 相关链接2 相关链接3


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #解决前端报错Bad #request #required #Parameter #ID #for #method