接口返回{“$ref“:$....[0]}时怎么解决

编程入门 行业动态 更新时间:2024-10-25 14:26:35

<a href=https://www.elefans.com/category/jswz/34/1771365.html style=接口返回{“$ref“:$....[0]}时怎么解决"/>

接口返回{“$ref“:$....[0]}时怎么解决

问题场景:

在开发测试平台的过程中,后端接口返回{" r e f " : ref": ref":…[0]}的数据,导致页面展示数据不对


问题描述

跟前端对接的时候最近经常出现数据中包含{" r e f " : ref": ref":…[0]}这类无法解析的问题
后端代码

@RequestMapping(value = "/qaUsers",method = RequestMethod.POST)public BaseResponse<PageList<QaUserDto>> qaUsers(@Valid @RequestBody QaUserQueryFilter filter){return BaseResponse.getInstance(userService.queryQaUser(filter));}

原因分析:

使用FastJson的JSONArray类型作为返回数据,当像JSONArray对象中添加JSONObject对象,而JSONObject对象中包含相同的节点数据时,FastJson会防止返回数据栈溢出的问题,自动将JSONArray中相同的节点数据使用引用方式代替,即:{" r e f " : ref": ref":…[0]}


解决方案:

将后端代码返回数据包裹一层JSON.toJSON

@RequestMapping(value = "/qaUsers",method = RequestMethod.POST)public BaseResponse<PageList<QaUserDto>> qaUsers(@Valid @RequestBody QaUserQueryFilter filter){return BaseResponse.getInstance(JSON.toJSON(userService.queryQaUser(filter)));}

记录踩坑记录,希望可以帮到你,喜欢的可以点个赞哦👍

更多推荐

接口返回{“$ref“:$....[0]}时怎么解决

本文发布于:2024-02-27 12:48:07,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1706579.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:接口   ref

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!