fastjson字符串中包含大括号的解析问题

爱吃猫的鱼0313 发布于 2019/02/27 14:56
阅读 3K+
收藏 0

例如: {"data": "{"name": "test"}"}
json解析会报异常

以下是问题补充:

@爱吃猫的鱼0313:解析的不是正规的json格式, 是String类型中包含大括号, 然后进行反编译 (2019/02/27 17:14)
加载中
1
韦小仇
韦小仇

你这个json本身的格式有点问题,多层JSON嵌套的话,内层JSON的大括号两边是不需要加双引号的。把你的 {"data": "{"name": "test"}"}改成 {"data": {"name": "test"}}就不会报错

爱吃猫的鱼0313
爱吃猫的鱼0313
就是这样的, 这样应该算是不规范的json格式, 我目前的解决办法是使用正则把这两个引号去掉, fastjson有没有相应的处理接口
0
wad12302
wad12302

的data 里面的内容是字符串,应该 拿到data字符串还后,再单独转json 

爱吃猫的鱼0313
爱吃猫的鱼0313
回复 @wad12302 : 关键是我要的字段是个数组, 所以没办法一个一个截取
wad12302
wad12302
回复 @爱吃猫的鱼0313 : 支付宝的api接口返回值好像也是这个模式,我也是单独截取出来
wad12302
wad12302
回复 @爱吃猫的鱼0313 : 我试了确实不行,以前对接接口时候遇到,比人是把data的值当做字符串处理,只能单独把data的值截取出来,然后再转json
爱吃猫的鱼0313
爱吃猫的鱼0313
你的意思是让我自己写反序列化的逻辑? 例子是我随便写的, 生产上复杂的多了
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部