善与恶的相互渗透是自然法则中的常规现象,有些事情不是能用好坏善恶定义的。
1. 背景
# 原来的JSON字符串是这个的。
{
"deviceNo": "lmi",
"h5Url": "https://web.xxx.com/info/singleBoard?boardId=10086&ref=setting_product",
"nativeUrl": "io://xxx.com/product/detail?id=1731&name=feedback"
}
采用Gson 的 toJson() 将Bean转成JSON字符串,结果就变成了下面这个样子。
{
"deviceNo": "lmi",
"h5Url": "https://web.xxx.com/info/singleBoard?boardId\u003d10086\u0026ref\u003dsetting_product",
"nativeUrl": "io://xxx.com/product/detail?id\u003d1731&name\u003dfeedback"
}
经过比对:
- “=“ 转义为 “\u003d“
- “&” 转义为“\u0026“
2. 解决方案
GsonBuilder.disableHtmlEscaping() 获取Gson实例,再进行toJson() 即可。