前台使用Ajax请求,后台使用SpringMVC接收请求参数,但是每次都为null,度娘找了半天,最后发现是自己太大意了~~~也是经验不够!
【直接上代码】:
前端Ajax请求代码:
$.ajax({
type : "post",
url : "<c:url value='/changeTaskStatus.do'/>",
data : {
"taskStatus":"1",
"taskName":"eat"
},
dataType : "JSON",
contentType : "application/json",
success : function(data) {
console.log(data)
},
error : function(data, XMLHttpRequest, textStatus,errorThrown) {
}
});
后台Java代码
@RequestMapping("/changeTaskStatus.do")
public @ResponseBody Map<String, String> changeTaskStatus(HttpServletRequest request, String taskStatus, String taskName) {
Map<String, String> map = new HashMap<String, String>();
System.out.println(request.getParameter("taskStatus"));
if (StringUtils.isEmpty(taskStatus) || StringUtils.isEmpty(taskName)) {
map.put("code", "106");
map.put("msg", "参数为NULL");
} else {
Integer result = 0;
if (result == 1) {
map.put("code", "104");
map.put("msg", "程序运行成功");
} else {
map.put("code", "105");
map.put("msg", "程序运行失败");
}
}
return map;
}
运行结果
解决办法
去掉Ajax请求中的contentType : "application/json"
参考:http://blog.csdn.net/blueheart20/article/details/45174399