1.服务器端,spring mvc 代码:
@RequestMapping(value = "/save")
@ResponseBody
public BaseModelResult<Long> update(@RequestBody User param) {
....
}
通过标记@RequestBody 会将请求的json数据自动转为对象,实际上如果web页面通过form表单提交的话,直接update(User param)这种方式也能自动转,不太喜欢这种json方式,有时有点坑。
2.Web页面代码
$.ajax({ type: "POST", url: "save.do", contentType:"application/json", data: JSON.stringify({name:$("#userName").val(), password:$("#password").val() }), dataType: "json", success: function (result) { console.log(result); }, error: function (message) { console.log(message); } });
注意标红的地方:
(1)contentType 默认为表单提交,也就是application/x-www-form-urlencoded方式,此处需要改为json方式
(2)data传入数据,此处需要注意需要转为字符串,不能传对象,感觉挺坑,此处应该与一般的post/get方式一致,都应为对象才好