Struts2 Action交互解密加密JSON参数
最近在工作用遇到了struts2与前台ajax交互json数据的写法。摒弃了之前的response.getWriter().write 方法。
用以下方法进行了相关的实现:
后台服务器端:
[java]
JSONObject obj = JSONObject.fromObject(ResultOfMap);
this.str = obj.toString();
//response.setCharacterEncoding("utf-8");
//response.getWriter().write(str);
str=URLEncoder.encode(str,"utf-8");
str=str.replaceAll("\\+", "%20");
System.out.println(str);
return SUCCESS;
//注意这个str应该是action的全局变量。并且有set和get方法
Action的配置代码:
[html]
<package name ="permission-json-iwom-private" extends ="json-default">
<action name="ChangeWeiboAccountTab" class="com.unitop.uap.action.iwom.weibo.WeiboPrivateAction" method="ChangeWeiboAccountTab">
<result type="json">
<param name="root">str</param>
//str为全局的变量
</result>
</action>
lt;/package>
前台js解密:
[javascript]
$.ajax({
type: "post",
url: "ChangeWeiboAccountTab.action",
data : {userid : userid},
success: function(obj){
obj = decodeURIComponent(obj);
obj = eval('('+obj+')');
其中decode是js自带方法
}
})
补充:综合编程 , 安全编程 ,