AngularJS发起$http.post请求
代码如下:
$http({
method:'post',
url:'post.php',
data:{name:"aaa",id:1,age:20}
}).success(function(req){
console.log(req);
})
这时候你会发现收不到返回的数据,结果为null,这是因为要转换成form data。
解决方案:
配置$httpProvider:
var myApp = angular.module('app',[]);
myApp.config(function($httpProvider){
$httpProvider.defaults.transformRequest = function(obj){
var str = [];
for(var p in obj){
str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
}
return str.join("&");
}
$httpProvider.defaults.headers.post = {
'Content-Type': 'application/x-www-form-urlencoded'
}
});
或者在post中配置:
$http({
method:'post',
url:'post.php',
data:{name:"aaa",id:1,age:20},
headers:{'Content-Type': 'application/x-www-form-urlencoded'},
transformRequest: function(obj) {
var str = [];
for(var p in obj){
str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
}
return str.join("&");
}
}).success(function(req){
console.log(req);
})
AngularJS发起$http.post请求
代码如下:
app.controller('sprintCtrl', function($scope, $http) {
$http.get("http://localhost:8080/aosapp/pt/service?formid=pt_aosapp_service_sprintlist&teamid=1")
.success(function (response) {console.log($scope.sprintlist=response);});
});
其实,angularjs 和 jquery js最大的区别在哪儿那,angularjs是你事先在心中构建好真个页面,然后用变量或者占位符来表示数据,数据来了,直接填充就可以了;而jquery则是动态的修改dom元素,如添加修改dom标签等。设计思想不一样。
以上就是angularJS 发起$http.post和$http.get请求的实现方法。小苗不经风雨长不成大树,人不经困难难以成材。更多关于angularJS 发起$http.post和$http.get请求的实现方法请关注haodaima.com其它相关文章!
![一个AJAX自动完成功能的js封装源码[支持中文]第1/2页](http://files.haodaima.com/upload/2007228153419399.gif)


