AngularJS发送异步Get/Post请求方法
1、在页面中加入AngularJS并为页面绑定ng-app 和 ng-controller
<body ng-app="MyApp" ng-controller="MyCtrl" > ... <script src="js/angular.min.js"></script> <script src="js/sbt.js"></script>
2、添加必要的控件并绑定相应的事件
get:<input type="text" ng-model="param">{{param}} <br> post: <input type="text" ng-model="user.name"><input type="text" ng-model="user.password"><br> <button ng-click="get()">Get</button> <button ng-click="post()">Post</button>
3、在JS脚本中发送进行Get/Post请求
get
$scope.get = function () { $http.get("/get", {params: {param: $scope.param}}) .success(function (data, header, config, status) { console.log(data); }) .error(function (data, header, config, status) { console.log(data); }) ; }
get 将参数放在URL中
$scope.get = function () { $http.get("/get?param="+$scope.param) .success(function (data, header, config, status) { console.log(data); }) .error(function (data, header, config, status) { console.log(data); }) ; }
post
$scope.post = function () { $http.post("/post", $scope.user) .success(function (data, header, config, status) { console.log(data); }) .error(function (data, header, config, status) { console.log(data); }) ; }
4、由Controller处理请求并返回结果
get
@RequestMapping("/get") @ResponseBody public Map<String,String> get(String param) { System.out.println("param:"+param); response.put("state", "success");//将数据放在Map对象中 return response; }
post
@RequestMapping("/post2") @ResponseBody public void post2(@RequestBody User user, HttpServletResponse resp) { //返回不同的http状态 if(user.getName()!=null&&!user.getName().equals("")){ resp.setStatus(200); } else{ resp.setStatus(300); } }
如果需要配置请求头部
$http({ method : "POST", url : "/post", data : $scope.user }).success(function(data, header, config, status) { console.log(data); }).error(function(data, header, config, status) { console.log(data); });
5、由JS http请求的回调函数处理并执行下一步操作
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Request</title> </head> <body ng-app="MyApp" ng-controller="MyCtrl" > get:<input type="text" ng-model="param"><br> post: <input type="text" ng-model="user.name"><input type="text" ng-model="user.password"><br> <button ng-click="get()">Get</button> <button ng-click="post()">Post</button> </body> <script src="js/angular.min.js"></script> <script src="js/sbt.js"></script> </html>
sbt.js
var app = angular.module("MyApp", []); app.controller("MyCtrl", function ($scope, $http) { $scope.get = function () { $http.get("/get", {params: {param: $scope.param}}) .success(function (data, header, config, status) { console.log(data); }) .error(function (response) { console.log(response); }) ; } $scope.post = function () { $http.post("/post", $scope.user) .success(function (data, header, config, status) { console.log(data); }) .error(function (data, header, config, status) { console.log(data); }) ; } });
以上这篇AngularJS发送异步Get/Post请求方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
这篇文章主要介绍了 Bootstrap + AngularJS 实现简单的数据过滤字符查找功能,代码简单易懂,非常不错具有参考借鉴价值,需要的朋友可以参考下2017-07-07Angularjs Ng_repeat中实现复选框选中并显示不同的样式方法
今天小编就为大家分享一篇Angularjs Ng_repeat中实现复选框选中并显示不同的样式方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-09-09Angular 服务器端渲染错误消息localStorage is not defined解决分析
这篇文章主要为大家介绍了Angular 服务器端渲染错误消息localStorage is not defined解决分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-07-07angularJS利用ng-repeat遍历二维数组的实例代码
本篇文章主要介绍了angularJS利用ng-repeat遍历二维数组的实例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-06-06Angularjs中的事件广播 —全面解析$broadcast,$emit,$on
下面小编就为大家带来一篇Angularjs中的事件广播 —全面解析$broadcast,$emit,$on。小编觉得挺不错的,现在分享给大家,也给大家做个参考,一起跟随小编过来看看吧2016-05-05使用AngularJS 应用访问 Android 手机的图片库
这篇文章主要介绍了使用AngularJS 应用访问 Android 手机的图片库的相关资料,需要的朋友可以参考下2015-03-03AngularJS基础 ng-mousemove 指令简单示例
本文主要介绍AngularJS ng-mousemove 指令,这里帮大家整理了ng-mousemove 指令的详细资料,并附有示例代码,有需要的朋友参考下2016-08-08
最新评论