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 相关文章推荐
jquery实现简单的轮换出现效果实例
Jul 23 Javascript
包含中国城市的javascript对象实例
Aug 03 Javascript
JS实现带关闭功能的阿里妈妈网站顶部滑出banner工具条代码
Sep 17 Javascript
干货分享:让你分分钟学会javascript闭包
Dec 25 Javascript
javascript对浅拷贝和深拷贝的详解
Oct 14 Javascript
jQuery tip提示插件(实例分享)
Apr 28 jQuery
Javascript创建类和对象详解
May 31 Javascript
微信小程序使用swiper组件实现类3D轮播图
Aug 29 Javascript
AngularJS 多指令Scope问题的解决
Oct 25 Javascript
Vue开发Html5微信公众号的步骤
Apr 11 Javascript
VUE实现Studio管理后台之鼠标拖放改变窗口大小
Mar 04 Javascript
vuex实现购物车的增加减少移除
Jun 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
DC的38部超级英雄动画电影
2020/03/03 欧美动漫
用PHP和MySQL保存和输出图片
2006/10/09 PHP
ThinkPHP上使用多说评论插件的方法
2014/10/31 PHP
PHP常用技巧汇总
2016/03/04 PHP
一个用js实现的页内搜索代码
2007/05/23 Javascript
BootStrap 智能表单实战系列(十)自动完成组件的支持
2016/06/13 Javascript
jquery判断类型是不是number类型的实例代码
2016/10/07 Javascript
利用Angular.js限制textarea输入的字数
2016/10/20 Javascript
利用Vue构造器创建Form组件的通用解决方法
2018/12/03 Javascript
JavaScript命令模式原理与用法实例详解
2020/03/10 Javascript
jQuery实现开关灯效果
2020/08/02 jQuery
js实现简单的随机点名器
2020/09/17 Javascript
JavaScript实现鼠标经过表格某行时此行变色
2020/11/20 Javascript
在Linux下使用Python的matplotlib绘制数据图的教程
2015/06/11 Python
python脚本内运行linux命令的方法
2015/07/02 Python
在Django中创建动态视图的教程
2015/07/15 Python
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
Python文件操作,open读写文件,追加文本内容实例
2016/12/14 Python
彻底理解Python list切片原理
2017/10/27 Python
Python中浅拷贝copy与深拷贝deepcopy的简单理解
2018/10/26 Python
Pycharm简单使用教程(入门小结)
2019/07/04 Python
python 正则表达式贪婪模式与非贪婪模式原理、用法实例分析
2019/10/14 Python
python集合的新增元素方法整理
2020/12/07 Python
Python基于mediainfo批量重命名图片文件
2020/12/29 Python
CSS3+font字体文件实现圆形半透明菜单具体步骤(图解)
2013/06/03 HTML / CSS
CSS3制作炫酷的下拉菜单及弹起式选单的实例分享
2016/05/17 HTML / CSS
有趣的睡衣和礼物:LazyOne
2019/11/27 全球购物
汉语专业应届生求职信
2013/10/01 职场文书
模范家庭事迹材料
2014/02/10 职场文书
应聘会计求职信
2014/06/11 职场文书
感恩教育月活动总结
2014/07/07 职场文书
博士生导师推荐信
2014/07/08 职场文书
六一儿童节开幕词
2015/01/29 职场文书
2015年预备党员自我评价
2015/03/04 职场文书
2016年区委书记抓基层党建工作公开承诺书
2016/03/25 职场文书
学生检讨书范文
2019/06/24 职场文书