我想将一个json字符串作为纯字符串发布到一个动作中,然后使用gson将该字符串转换为List,但该字符串仍被jquery/webwork视为json对象,我使用的是jquery 1.43+webwork+gson,没有jquery json插件什么的。
这是行动:
public class ImageAction extends BaseAction {
private String pks;
public void setPks(String pks) {
this.pks = pks;
Gson gson=new Gson();
List<Map> list=gson.fromJson(pks,new TypeToken<List<Map<String,String>>>(){}.getType());
System.out.println(list.size());
}
......
}
jQuery代码:
j$.ajax({
url:approveUrl,
data: {pks:'[{"userName":"theoffspring"}]'},
// dataType:'json',
type:'post',
// traditional: true,
success:function (response) {
hideProgressBar(parent.document)
if (response.result==false){
alert(response.msg);
return;
}
// document.location.reload();
}
})
我希望将 pks 作为通用字符串而不是 json 对象发布。但是当我调用 jquery 代码时,结果并没有调用 setPks 方法。这么奇怪。