后端查询列表接口返回的对象里包含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