我们可以通过json
拦截器将JSON发送到Struts2操作。 http://tech.learnerandtutor.com/send-json-object-to-struts-2-action-by-jquery-ajax/有很好的样本。
json
拦截器要求我们直接使用Ajax时可以设置content type
application/json
或application/json-rpc
这样的请求:
$.ajax({
url: "writeJSON.action",
data: data1,
dataType: 'json',
contentType: 'application/json',
但我们正在使用struts 2 jquery插件标签(sj:a
和sj:submit
...)来管理我们的ajax调用。
我们是否可以使用这些代码设置contentType
。
我没有为此找到标签属性。
如果没有实现,还有其他方法可以设置它。
答案 0 :(得分:2)
您应该将Content-type: application/json
标头设置为$.ajax()
使用的xhr对象。
$.ajax({
url: "writeJSON.action",
data: data1,
dataType: 'json',
contentType: 'application/json',
该插件正在使用$.ajaxSubmit()
,应该删除此类提交,因为它不适用于json数据。