springmvc接收json的问题

yybray 发布于 2014/10/07 00:46
阅读 1K+
收藏 0

最近在看springmvc ajax传递json数据到后台


var user = {"username": username, "password": password};
//方式一(后台成功获取)
$.ajax({  
    type: "POST",  
    url: "userController/saveUserByJson.action",  
    data: user
});
//方式二(后台获取失败,后台Contrallor能收到请求,就是不能成功获取到参数)
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", "userController/saveUserByJson.action", true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send(user);


jquery提供的方法能正常运行,但是自己写js后台却不能获取,这是为什么呢?

我把 xmlhttp.send(user); 
改成 xmlhttp.send("username=xx&password=xx");就能成功获取

难道jquery内部把json转换成了这种 key=value形式的字符串了?

如果不是那是为啥?






加载中
0
心有灵犀
心有灵犀
自己用firebug看一下传到后台的参数是什么就知道了
0
xyxo
xyxo

varuser = {"username": username,"password": password};

确定你定义的值(字符串)不用引号?  

limaofeng
limaofeng
不用引号是变量吧
yybray
yybray
用了也还是不能识别
0
迷
原生js用post时,send的参数本来就是aaa=bbb&ccc=ddd这种字符串,而你传的是object
迷
回复 @yybray : jquery内部怎么处理的我不清楚,不过你问题里有句是说错了的,user不是json,是object
yybray
yybray
原来是这样
返回顶部
顶部