Angular和jQuery的ajax请求的区别

2025-04-14 17:51:41
推荐回答(2个)
回答1:

jQuery的post明显比angularjs的要简单一些,人性化一些
AngularJS:
$http.post('do-submit.php',myData).success(function(){ // some code});jQuery:
$.post('do-submit.php', myData, function() { // some code});看起来没什么区别吧?可是,用angularjs的$http提交的数据,在php服务器端却无法通过$_REQUEST/$_POST获取到,而需要用:
$params = json_decode(file_get_contents('php://input'),true);
来获取。这是因为两者的post对header的处理有所不同……jQuery会把作为JSON对象的myData序列化,例如:
var myData = { a : 1, b : 2 };
jQuery在post数据之前会把myData转换成字符串:"a=1&b=2"
而Angular不会。

回答2:

jquery是javascript对象转换了字符串,传给后台。在SpringMVC中,就可以使用@RequestParam注解或者request.getParameter()方法获取参数。
而在angular中,$http的contentType默认值是
application/json;charset=UTF-8
这样在后台,SpringMVC通过@RequestParam注解或者request.getParameter()方法是获取不到参数的。