赞
踩
application/x-www-from-urlencoded:这是默认的编码格式,它是以传输键值对的形式传参的
例如:name=张三&age=18
贴上一点代码有助于比较:
$(function () { $("#bt").click(function () { $.ajax({ url: "web/test6", //编码类型 默认 x-www-form-urlencoded //数据 data:{"name":"王五","age":"30"}, //返回数据类型 dataType: "json", //请求类型 type: "POST", //处理函数 success: function (data) { //date服务器的json数据 alert(data.name); } }) }) });
@RequestMapping("/test6")
@ResponseBody
public User test6(User user){
System.out.println(user);
return user;
}
data里的格式不用使用’'包裹,否则会获得null(可与下面代码作比较)
application/json:他传输的是json格式的数据
例如{“name”:“张三”,“age”:“18”}
json格式代码有两种写法:
1.
$(function () { $("#bt").click(function () { $.ajax({ url: "web/test6", //编码类型 默认 x-www-form-urlencoded //使用json格式编码 contentType: 'application/json;charset=UTF-8', //数据 data:'{"name":"王五","age":"30"}', //返回数据类型 dataType: "json", //请求类型 type: "POST", //处理函数 success: function (data) { //date服务器的json数据 alert(data.name); } }) }) });
这里的data里的格式得加上’’,否则会出错
2.
var user = {"name": "朱八", "age": "40"}; $(function () { $("#bt").click(function () { $.ajax({ url: "web/test6", //编码类型 默认 x-www-form-urlencoded contentType: 'application/json;charset=UTF-8', //json对象需要 json转化 data: JSON.stringify(user), //返回数据类型 dataType: "json", //请求类型 type: "POST", //处理函数 success: function (data) { //date服务器的json数据 alert(data.name); } }) }) });
两种格式的后端代码都是一样的,加上@RequestBody即可
@RequestMapping("/test6")
@ResponseBody
public User test6(@RequestBody User user){
System.out.println(user);
return user;
}
最后分析一下两边代码的差异
小白笔记,多多指教
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。