AngularJS入门教程之 XMLHttpRequest实例讲解


Posted in Javascript onJuly 27, 2016

AngularJS XMLHttpRequest

$http 是 AngularJS 中的一个核心服务,用于读取远程服务器的数据。

读取 JSON 文件

以下是存储在web服务器上的 JSON 文件:

http://www.runoob.com/try/angularjs/data/Customers_JSON.php

{
"records":
[
{
"Name" : "Alfreds Futterkiste",
"City" : "Berlin",
"Country" : "Germany"
},
{
"Name" : "Berglunds snabbköp",
"City" : "Luleå",
"Country" : "Sweden"
},
{
"Name" : "Centro comercial Moctezuma",
"City" : "México D.F.",
"Country" : "Mexico"
},
{
"Name" : "Ernst Handel",
"City" : "Graz",
"Country" : "Austria"
},
{
"Name" : "FISSA Fabrica Inter. Salchichas S.A.",
"City" : "Madrid",
"Country" : "Spain"
},
{
"Name" : "Galería del gastrónomo",
"City" : "Barcelona",
"Country" : "Spain"
},
{
"Name" : "Island Trading",
"City" : "Cowes",
"Country" : "UK"
},
{
"Name" : "Königlich Essen",
"City" : "Brandenburg",
"Country" : "Germany"
},
{
"Name" : "Laughing Bacchus Wine Cellars",
"City" : "Vancouver",
"Country" : "Canada"
},
{
"Name" : "Magazzini Alimentari Riuniti",
"City" : "Bergamo",
"Country" : "Italy"
},
{
"Name" : "North/South",
"City" : "London",
"Country" : "UK"
},
{
"Name" : "Paris spécialités",
"City" : "Paris",
"Country" : "France"
},
{
"Name" : "Rattlesnake Canyon Grocery",
"City" : "Albuquerque",
"Country" : "USA"
},
{
"Name" : "Simons bistro",
"City" : "København",
"Country" : "Denmark"
},
{
"Name" : "The Big Cheese",
"City" : "Portland",
"Country" : "USA"
},
{
"Name" : "Vaffeljernet",
"City" : "Århus",
"Country" : "Denmark"
},
{
"Name" : "Wolski Zajazd",
"City" : "Warszawa",
"Country" : "Poland"
}
]
}

AngularJS $http

AngularJS $http 是一个用于读取web服务器上数据的服务。

$http.get(url) 是用于读取服务器数据的函数。

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<div ng-app="myApp" ng-controller="customersCtrl"> 

<ul>
 <li ng-repeat="x in names">
  {{ x.Name + ', ' + x.Country }}
 </li>
</ul>

</div>

<script>
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope, $http) {
 $http.get("http://www.runoob.com/try/angularjs/data/Customers_JSON.php")
 .success(function (response) {$scope.names = response.records;});
});
</script>

</body>
</html>

运行结果:

  • Alfreds Futterkiste, Germany
  • Ana Trujillo Emparedados y helados, Mexico
  • Antonio Moreno Taquería, Mexico
  • Around the Horn, UK
  • B's Beverages, UK
  • Berglunds snabbköp, Sweden
  • Blauer See Delikatessen, Germany
  • Blondel père et fils, France
  • Bólido Comidas preparadas, Spain
  • Bon app', France
  • Bottom-Dollar Marketse, Canada
  • Cactus Comidas para llevar, Argentina
  • Centro comercial Moctezuma, Mexico
  • Chop-suey Chinese, Switzerland
  • Comércio Mineiro, Brazil

应用解析:

注意:以上代码的 get 请求是本站的服务器,你不能直接拷贝到你本地运行,会存在跨域问题,解决办法就是将

Customers_JSON.php 的数据拷贝到你自己的服务器上,附:PHP Ajax 跨域问题最佳解决方案。

AngularJS 应用通过 ng-app 定义。应用在 <div> 中执行。

ng-controller 指令设置了 controller 对象 名。

函数 customersController 是一个标准的 JavaScript 对象构造器。

控制器对象有一个属性: $scope.names。

$http.get() 从web服务器上读取静态 JSON 数据。

服务器数据文件为:  http://www.runoob.com/try/angularjs/data/Customers_JSON.php。

当从服务端载入 JSON 数据时,$scope.names 变为一个数组。

注意:以上代码也可以用于读取数据库数据。

以上就是对AngularJS XMLHttpRequest资料的整理,后续继续补充,希望能帮助有需要的朋友。

Javascript 相关文章推荐
脚本收藏iframe
Jul 21 Javascript
javascript 学习笔记(六)浏览器类型及版本信息检测代码
Apr 08 Javascript
js 阻止子元素响应父元素的onmouseout事件具体实现
Dec 23 Javascript
javascript 获取iframe里页面中元素值的方法
Feb 17 Javascript
通过Jquery的Ajax方法读取将table转换为Json
May 31 Javascript
纯javascript模仿微信打飞机小游戏
Aug 20 Javascript
jQuery实现可高亮显示的二级CSS菜单效果
Sep 01 Javascript
JSON字符串和对象相互转换实例分析
Jun 16 Javascript
ajax与json 获取数据并在前台使用简单实例
Jan 19 Javascript
vue.js父组件使用外部对象的方法示例
Apr 25 Javascript
Vue列表页渲染优化详解
Jul 24 Javascript
解决layui laydate 时间控件一闪而过的问题
Sep 28 Javascript
AngularJS入门教程之服务(Service)
Jul 27 #Javascript
AngularJS 过滤器的简单实例
Jul 27 #Javascript
AngularJS延迟加载html template
Jul 27 #Javascript
AngularJS入门教程之控制器详解
Jul 27 #Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
Jul 27 #Javascript
AngularJS入门教程之Scope(作用域)
Jul 27 #Javascript
AngularJS入门之动画
Jul 27 #Javascript
You might like
杏林同学录(一)
2006/10/09 PHP
用PHP读取RSS feed的代码
2008/08/01 PHP
Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
2011/04/18 PHP
PHP下的Oracle客户端扩展(OCI8)安装教程
2014/09/10 PHP
在Mac OS上搭建PHP的Yii框架及相关测试环境
2016/02/14 PHP
thinkPHP5 tablib标签库自定义方法详解
2017/05/10 PHP
nodejs入门详解(多篇文章结合)
2012/03/07 NodeJs
jQuery 菜单随滚条改为以定位方式(固定要浏览器顶部)
2012/05/24 Javascript
当自定义数据属性为json格式字符串时jQuery的data api问题探讨
2013/02/18 Javascript
js关于精确计算和数值格式化以及直接引js文件
2014/01/28 Javascript
详解js私有作用域中创建特权方法
2016/01/25 Javascript
javascript 数组的定义和数组的长度
2016/06/07 Javascript
基于JS代码实现实时显示系统时间
2016/06/16 Javascript
vue中如何引入jQuery和Bootstrap
2017/04/10 jQuery
three.js中文文档学习之如何本地运行详解
2017/11/20 Javascript
Vue.directive使用注意(小结)
2018/08/31 Javascript
js笔试题-接收get请求参数
2019/06/15 Javascript
[03:04]DOTA2超级联赛专访ZSMJ “莫名其妙”的逆袭
2013/05/23 DOTA
Python素数检测实例分析
2015/06/15 Python
Python max内置函数详细介绍
2016/11/17 Python
Python3中简单的文件操作及两个简单小实例分享
2017/06/18 Python
如何用Python破解wifi密码过程详解
2019/07/12 Python
python实现socket+threading处理多连接的方法
2019/07/23 Python
python使用 cx_Oracle 模块进行查询操作示例
2019/11/28 Python
使用layui实现左侧菜单栏及动态操作tab项的方法
2020/11/10 HTML / CSS
护士思想汇报
2014/01/12 职场文书
班班通项目实施方案
2014/02/25 职场文书
2014国庆节商场促销活动策划方案
2014/09/16 职场文书
四风问题对照检查整改措施思想报告
2014/10/05 职场文书
优秀护士事迹材料
2014/12/25 职场文书
监理中标通知书
2015/04/16 职场文书
小学教研工作总结2015
2015/05/13 职场文书
活动简报范文
2015/07/22 职场文书
2017年大学生寒假社会实践活动总结
2016/04/06 职场文书
详解Java实现设计模式之责任链模式
2021/06/23 Java/Android
python分分钟绘制精美地图海报
2022/02/15 Python