AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】


Posted in Javascript onNovember 02, 2016

本文实例讲述了AngularJS与服务器Ajax交互操作。分享给大家供大家参考,具体如下:

AngularJS从Web服务器请求资源都是通过Ajax来完成,所有的操作封装在$http服务中,$http服务是只能接收一个参数的函数,这个参数是一个对象,用来完成HTTP请求的一些配置,函数返回一个对象,具有success和error两个方法。

用法如下:

$http({method:'post',url:'loginAction.do'
}).success(function(data,status,headers,config){
//正常响应回调
}).error(function(data,status,headers,config){
//错误响应回调
});

状态码在200-299之间,会认为响应是成功的,success方法会被调用,第一个参数data为服务器端返回的数据,status为响应状态码。后面两个参数不常用,这里不做介绍。有兴趣的朋友请参考AngularJs API文档。

除此之外$http服务提供了一些快捷方法,这些方法简化了复杂的配置,只需要提供URL即可。比如对于post请求我们可以写成下面这个样子:

$http.post("loginAction.do")
.success(function(data,status,headers,config){
//正常响应回调
}).error(function(data,status,headers,config){
//错误响应回调
});

下面来看一个案例:

<!DOCTYPE html>
<html ng-app="serverMod">
<head lang="en">
 <meta charset="UTF-8">
 <script type="text/javascript" src="angular-1.3.0.14/angular.js"></script>
 <title>tutorial09</title>
</head>
<body ng-controller="ServerController" ng-init="init()">
<p>name:{{name}}</p>
<p>age:{{age}}</p>
<button ng-click="getInfo()">请求</button>
</body>
<script>
 var serverMod = angular.module("serverMod",[]);
 serverMod.controller("ServerController",function($scope,$log,$http){
  $scope.init = function()
  {
   $log.info("init functionn");
  }
  $scope.getInfo = function()
  {
   $http.get("json/person.json").success(function(data,status){
    alert(status);
    $scope.name = data.name;
    $scope.age = data.age;
   });
  }
 });
</script>
</html>

点击”请求”按钮,我们通过$http服务以get方式向服务器请求数据,服务器响应数据格式通常为一段Json,这里我们用一个文本文件代替,person.json内容如下:

{"name":"Rongbo_J","age":"23"}

返回的数据会放在data参数中,我们可以获取服务器响应的内容?⑹?菰谑油贾姓故境隼础?/p>

AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】

完整demo实例代码点击此处本站下载

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
JS 统计时间
Mar 09 Javascript
JavaScript Event学习第十章 一些可替换的事件对
Feb 10 Javascript
基于JQuery的数字改变的动画效果--可用来做计数器
Aug 11 Javascript
Knockout数组(observable)使用详解示例
Nov 15 Javascript
javascript引擎长时间独占线程造成卡顿的解决方案
Dec 03 Javascript
js实现非常简单的焦点图切换特效实例
May 07 Javascript
只需五句话搞定JavaScript作用域(经典)
Jul 26 Javascript
解决webpack打包速度慢的解决办法汇总
Jul 06 Javascript
jQuery easyui datagird编辑行删除行功能的实现代码
Sep 20 jQuery
JavaScript实现预览本地上传图片功能完整示例
Mar 08 Javascript
layer弹出层自定义提交取消按钮的例子
Sep 10 Javascript
Echarts地图添加引导线效果(labelLine)
Sep 30 Javascript
用AngularJS来实现监察表单按钮的禁用效果
Nov 02 #Javascript
AngularJS入门教程之Cookies读写操作示例
Nov 02 #Javascript
js导出excel文件的简洁方法(推荐)
Nov 02 #Javascript
AngularJS入门教程之多视图切换用法示例
Nov 02 #Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
Nov 02 #Javascript
arcgis for js 修改infowindow样式的方法
Nov 02 #Javascript
快速解决js中window.location.href不工作的问题
Nov 02 #Javascript
You might like
IIS下PHP连接数据库提示mysql undefined function mysql_connect()
2010/06/04 PHP
PHP中使用mktime获取时间戳的一个黑色幽默分析
2012/05/31 PHP
PHP 错误处理机制
2015/07/06 PHP
详解PHP中的null合并运算符
2015/12/30 PHP
javascript showModalDialog,open取得父窗口的方法
2010/03/10 Javascript
JQuery下拉框应用示例介绍
2014/04/23 Javascript
JS+CSS实现实用的单击输入框弹出选择框的方法
2015/02/28 Javascript
JS实现控制表格内指定单元格内容对齐的方法
2015/03/30 Javascript
JQuery操作textarea,input,select,checkbox方法
2015/09/02 Javascript
基于jquery实现即时检查格式是否正确的表单
2016/05/06 Javascript
微信小程序模板之分页滑动栏
2017/02/10 Javascript
Vue面试题及Vue知识点整理
2018/10/07 Javascript
微信小程序与后台PHP交互的方法实例分析
2018/12/10 Javascript
vue 进阶之实现父子组件间的传值
2019/04/26 Javascript
ES6 let和const定义变量与常量的应用实例分析
2019/06/27 Javascript
python 数据加密代码
2008/12/24 Python
python实现的重启关机程序实例
2014/08/21 Python
Python通过PIL获取图片主要颜色并和颜色库进行对比的方法
2015/03/19 Python
浅要分析Python程序与C程序的结合使用
2015/04/07 Python
Python字符串格式化%s%d%f详解
2018/02/02 Python
使用 Python 实现文件递归遍历的三种方式
2018/07/18 Python
Python的UTC时间转换讲解
2019/02/26 Python
Python 元组拆包示例(Tuple Unpacking)
2019/12/24 Python
python——全排列数的生成方式
2020/02/26 Python
HTML5和CSS3实例教程总结(推荐)
2016/07/18 HTML / CSS
HTML5实现移动端复制功能
2018/04/19 HTML / CSS
英国最受欢迎的手表网站:Watch Shop
2016/10/21 全球购物
俄罗斯优惠券网站:BIGLION
2017/05/21 全球购物
Guess美国官网:美国知名服装品牌
2019/04/08 全球购物
华为的Java面试题
2014/03/07 面试题
客户经理岗位职责
2013/12/08 职场文书
结婚典礼主持词
2015/06/29 职场文书
如何用PHP websocket实现网页实时聊天
2021/05/26 PHP
原生JS实现飞机大战小游戏
2021/06/09 Javascript
pytorch中的 .view()函数的用法介绍
2022/03/17 Python
vue实现Toast组件轻提示
2022/04/10 Vue.js