ajax post方式一个字段的参数太长,导致接口报400异常。
先尝试了
server.tomcat.max-http-post-size=-1
没有成功
最后把ajax表单传参改成了ajax json传参方式就可以了
$.ajax({
url: '${ctx}/threat/threatIn',
contentType:'application/json',
type: 'POST',
data: JSON.stringify(jsonStra),
dataType: 'json',
beforeSend: function (XMLHttpRequest) {
indexLoad = layer.msg('正在上传' +
'...', {
icon: 16
, shade: 0.1
, time: false
});
},
success: function (data) {
layer.close(indexLoad);//关闭提示框
if (data.result) {
layer.msg("操作成功!");
setTimeout(function(){
window.location.href="${ctx}/threat/list";
},1000)
// layer.close(indexo);//关闭弹出层
// layui.use(['table'], function () {
// layui.table.reload('threat_reload', {
// page: {
// curr: 1 //重新从第 1 页开始
// }
// , where: {}
// });
// });
} else {
layer.msg("操作失败!");
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
layer.msg("操作失败");
}
});
这是前端json传参方式,只看前面,后面是layui的操作
后端使用
@RequestBody ThreatVo jsonStra
来接收
ThreatVo为定义的vo对象
参数格式为:
{"jsonStra":""+JSON.stringify(data)+""}
标准的json格式