fastjson List转json之后出现反斜杠问题

请求第三方接口时候,因为List转json之后一直报签名失败,后面发现是反斜杠问题。

错误格式

"subOrders":[{"mid":"988460101800201","totalAmount":"1"}]

正确格式

"subOrders":[{"mid":"988460101800201","totalAmount":"1"}]

处理方法:使用 Object 类型

1. import java.util.ArrayList;  
  2. import java.util.List;  
  3.   
  4. import com.alibaba.fastjson.JSONObject;  
  5.   
  6. public class Main {  
  7.     public static void main(String[] argv) throws Exception {  
  8.         List<A> a = new ArrayList<A>() ;  
  9.         a.add(new A("1", 1)) ;  
  10.        a.add(new A("2", 2)) ;  
  11.        a.add(new A("3", 3)) ;  
  12.         //直接返回对象就不会有反斜杠。。
  13.         //必须是Object类型,不能调toString,不然也会有转义字符
  14.         Object o = JSONObject.toJSON(a) ;  
  15.         System.out.println(o) ;  
  16.     }  
  17. }
经验分享 程序员 微信小程序 职场和发展