美文网首页
使用fastjson为何为出现反斜杠“\”

使用fastjson为何为出现反斜杠“\”

作者: 杏仁丶 | 来源:发表于2019-07-16 23:38 被阅读0次

背景:今天用fastjson组装返回报文,结果发现返回报文中的json串中一直含有“\”反斜杠,经过查阅理解解决,记录一下。
PS:rulesTest.getRules()JSONObject类型
错误代码:

JSONObject returnObject = new JSONObject();
returnObject.put("name",rulesTest.getSysName());
returnObject.put("rules",rulesTest.getRules().toJSONString());  //这一句有问题
return RetResponse.makeOKRsp("注册成功",returnObject);

正确代码:

JSONObject returnObject = new JSONObject();
returnObject.put("name",rulesTest.getSysName());
returnObject.put("rules",rulesTest.getRules());  //正确做法
return RetResponse.makeOKRsp("注册成功",returnObject);
原因猜测:

在错误代码中,我是将JSONObject转成字符串之后,以rules为key,放在了返回的JSONObject中,这样相当于存入的是一个字符串形式;
在正确代码中,我是将JSONObject直接以rules为key,放在了返回的JSONObject中,存入的是一个JSONObject对象;

写着写着我发现这个问题太弱智了,我。。。。言尽于此~

参考链接:
1、fastjson 如何去掉反斜杠

相关文章

网友评论

      本文标题:使用fastjson为何为出现反斜杠“\”

      本文链接:https://www.haomeiwen.com/subject/tqzxlctx.html