angularJS 发起$http.post和$http.get请求的实现方法
AngularJS发起$http.post请求
代码如下:
$http({ method:'post', url:'post.php', data:{name:"aaa",id:1,age:20} }).success(function(req){ console.log(req); })
这时候你会发现收不到返回的数据,结果为null,这是因为要转换成formdata。
解决方案:
配置$httpProvider:
varmyApp=angular.module('app',[]); myApp.config(function($httpProvider){ $httpProvider.defaults.transformRequest=function(obj){ varstr=[]; for(varpinobj){ str.push(encodeURIComponent(p)+"="+encodeURIComponent(obj[p])); } returnstr.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){ varstr=[]; for(varpinobj){ str.push(encodeURIComponent(p)+"="+encodeURIComponent(obj[p])); } returnstr.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和jqueryjs最大的区别在哪儿那,angularjs是你事先在心中构建好真个页面,然后用变量或者占位符来表示数据,数据来了,直接填充就可以了;而jquery则是动态的修改dom元素,如添加修改dom标签等。设计思想不一样。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。