之前和Android前台配合一个项目时,JSON返回的数据始终带大量的转义字符,后来终于解决了。把问题记录下来作为以后的参考。
后台是ssh框架,前台是Android,后台以JSON传值给前台。
Java代码:
要返回的值定义成以下类型:
net.sf.json.JSONArray;
net.sf.json.JSONObject;
如:net.sf.json.JSONArray json = new net.sf.json.JSONArray();
json赋值的代码就不写了,然后直接把json返回,如下:
struts.xml:
<action name=" " class="AdminAction" method=" ">
<result name="success" type="json">
<param name="root">json</param>
</result>
</action>
也可以把json对象转换为字符串然后返回字符串,让前台再转换为json格式。
以上面的这种格式返回前台接收到的数据就没有转义字符。
另外,如果返回的值定义成一下类型:
org.json.JSONObject;
org.json.JSONArray;
直接返回json对象时前台接受到的值始终为:{}
如果把json对象转换为字符串返回,前台接收到的值就会包含大量的转义字符。
我不知道这两种json格式有什么区别,只是针对这一个问题。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。