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 相关文章推荐
js 判断 enter 事件
Feb 12 Javascript
Jquery 模板数据绑定插件的使用方法详解
Jul 08 Javascript
jquery解析xml字符串简单示例
Apr 11 Javascript
JavaScript将字符串转换成字符编码列表的方法
Mar 19 Javascript
深入理解JavaScript中的并行处理
Sep 22 Javascript
AngularJS验证信息框架的封装插件用法【w5cValidator扩展插件】
Nov 03 Javascript
自动适应iframe右边的高度
Dec 22 Javascript
JS移动端/H5同时选择多张图片上传并使用canvas压缩图片
Jun 20 Javascript
详解node child_process模块学习笔记
Jan 24 Javascript
解决npm管理员身份install时出现权限的问题
Mar 16 Javascript
vue $set 给数据赋值的实例
Nov 09 Javascript
JS变量提升原理与用法实例浅析
May 22 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
PHP新手上路(十)
2006/10/09 PHP
让PHP开发者事半功倍的十大技巧小结
2010/04/20 PHP
简单的PHP留言本实例代码
2010/05/09 PHP
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
2016/11/03 PHP
PHP消息队列实现及应用详解【队列处理订单系统和配送系统】
2019/05/20 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
广告切换效果(缓动切换)
2009/05/27 Javascript
javascript实现的在当前窗口中漂浮框的代码
2010/03/15 Javascript
jQuery之尺寸调整组件的深入解析
2013/06/19 Javascript
jquery 模板的应用示例
2013/11/12 Javascript
JavaScript实现的圆形浮动标签云效果实例
2015/08/06 Javascript
JS中setTimeout的巧妙用法前端函数节流
2016/03/24 Javascript
JS组件Bootstrap ContextMenu右键菜单使用方法
2016/04/17 Javascript
Angular 4.x 路由快速入门学习
2017/05/03 Javascript
微信小程序 页面滑动事件的实例详解
2017/10/12 Javascript
BootStrap模态框不垂直居中的解决方法
2017/10/19 Javascript
Node.js readline 逐行读取、写入文件内容的示例
2018/03/01 Javascript
优化Vue项目编译文件大小的方法步骤
2019/05/27 Javascript
python数据结构之图的实现方法
2015/07/08 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
2016/09/15 Python
浅谈PYTHON 关于文件的操作
2019/03/19 Python
django富文本编辑器的实现示例
2019/04/10 Python
利用Python的turtle库绘制玫瑰教程
2019/11/23 Python
六种酷炫Python运行进度条效果的实现代码
2020/07/17 Python
Python根据字符串调用函数过程解析
2020/11/05 Python
Python读取图像并显示灰度图的实现
2020/12/01 Python
NEW LOOK官网:英国时装零售巨头之一,快时尚品牌
2017/01/11 全球购物
便携式太阳能系统的创新者:GOAL ZERO
2018/02/04 全球购物
英国领先的餐饮折扣俱乐部:Gourmet Society
2020/07/26 全球购物
写一个方法1000的阶乘
2012/11/21 面试题
中专毕业生自荐信
2013/11/16 职场文书
创先争优承诺书范文
2014/03/31 职场文书
2015年高考寄语或鼓励的话
2015/03/23 职场文书
辩护词格式
2015/05/22 职场文书
基于CSS3画一个iPhone
2021/04/21 HTML / CSS
Mysql索引失效 数据库表中有索引还是查询很慢
2022/05/15 MySQL