真正的应用需要和真实的服务器进行交互,无论你是想把数据持久化到云端,还是需要与其他用户进行实时交互,都需要让应用与服务器时进行交互。
为了实现这一点,Angular提供了一个叫做$http的服务。它提供了一个可扩展的抽象方法列表,使得与服务器的交互更加容易。它支持HTTP、JSONP和CORS方式。它还包含了安全性支持,避免JSON格式的脆弱性和XSRF(跨站请求伪造)。它让你可以轻松的转换请求和响应数据,甚至还实现了简单的缓存。
比如说我们已经创建了一个服务器,当查询/products路径时,它会以JSON格式返回一个商品列表。
返回的响应示例如下:
products.json
[ { "id":0, "title":"Paint pots", "description":"Pots full of paint", "price":3.95 }, { "id":1, "title":"Polka dots", "description":"Dots with that polka groove", "price":12.95 }, { "id":2, "title":"Pebbles", "description":"Just little rocks,really", "price":6.95 } ]
模板和控制器如下:
<html ng-app='myApp'> <head> <title>Http实例</title> </head> <body ng-controller='ShoppingController'> <h1>Shop!</h1> <table> <tr ng-repeat="item in items"> <td>{{item.title}}</td> <td>{{item.description}}</td> <td>{{item.price | currency}}</td> </tr> </table> <script src="lib/angular/angular.js"></script> <script> var myApp=angular.module('myApp',[]); myApp.controller('ShoppingController', function($scope, $http) { $http.get('/products').success(function(data, status, headers, config){ $scope.items = data; }); }); </script> </body> </html>
当然,上面的代码由于没有后台的/products服务接口,所以会报404错误。
如果要让上面的代码可以运行,有如下两种方法:
一.在工程下新建一个用于保存json数据的文件
如在WebContent下新建json文件夹,下面建products.json,内容如返回的products.json,然后进一步修改模板和控制器如下:
<html ng-app='myApp'> <head> <title>Http实例</title> </head> <body ng-controller='ShoppingController'> <h1>Shop!</h1> <table> <tr ng-repeat="item in items"> <td>{{item.title}}</td> <td>{{item.description}}</td> <td>{{item.price | currency}}</td> </tr> </table> <script src="lib/angular/angular.js"></script> <script> var myApp=angular.module('myApp',[]); myApp.controller('ShoppingController', function($scope, $http) { $http.get('json/products.json').success(function(data, status, headers, config){ $scope.items = data; }); }); </script> </body> </html>二.采用ngResource方式
相关推荐
在AngularJS中,与Web服务器交互主要依赖于其内置的`$http`服务。`$http`服务提供了与HTTP协议兼容的方法,如GET、POST、PUT、DELETE等,用于向服务器发送请求并接收响应。它使用Promise API来处理异步操作,使得...
**AngularJS 与服务器交互** AngularJS 是一个强大的前端JavaScript框架,主要用于构建单页应用程序(SPA)。它提供了双向数据绑定、依赖注入、模块化和MVC(Model-View-Controller)架构模式,使得前端开发更加...
### AngularJS实现与服务器交互详解 #### 一、引言 在现代Web开发中,客户端与服务器之间的交互是必不可少的一部分。对于大多数应用而言,无论是为了将数据存储在云端,还是为了实现实时通信功能,都需要应用程序...
AngularJS作为一个非常实用的前端框架,我们知道...在angularJS中提供了一种与远程Http服务器交互的服务,$http $http是angularJS中的一个可信服务,利用浏览器的XMLHTTPRequest核心对象与远程http服务器进行交互。 $ht
本文实例讲述了AngularJS实现与Java Web服务器交互操作的方法。分享给大家供大家参考,具体如下: AngularJS是Google工程师研发的产品,它的强大之处不是几句话就能描述的,只有真正使用过的人才能体会到,笔者准备...
3. 控制器(Controller):控制器是MVC模式中的C部分,负责处理业务逻辑和视图之间的交互。 4. 路由(Routing):AngularJS的路由系统允许根据URL导航到不同的视图,实现页面无刷新跳转。 5. 服务(Service):...
3. HTTP交互:使用$http服务进行Ajax请求,与服务器进行数据交互。 4. 路由配置:使用uirouter配置路由,实现页面间的动态加载和导航。 5. 自定义指令:根据需求创建自定义指令,增强DOM元素的功能。 四、最佳实践 ...
$http服务是AngularJS提供的用于与远程HTTP服务器进行通信的核心服务,它封装了浏览器原生的XMLHttpRequest对象,使得开发者可以更方便地通过AJAX与服务器进行数据交互。 $http服务支持多种HTTP请求方法,如GET、...
在AngularJS中,与后台交互是应用程序功能的重要组成部分,特别是在构建单页应用(SPA)或混合移动应用时。AngularJS 提供了$http服务,允许开发者轻松地发起HTTP请求并与服务器进行数据交换。本文将深入探讨如何在...
在AngularJS中,SQL(Structured Query Language)的集成主要用于与后端数据库进行交互,以便获取、更新、删除或插入数据。在本入门教程中,我们将深入理解如何在AngularJS应用程序中使用SQL,以及如何通过HTTP服务...
4. **服务(Services)**:服务是可重用的代码块,可用于存储数据、执行复杂的业务逻辑或与服务器通信。AngularJS 内置了一些服务,如 $http 用于HTTP请求,$scope 用于管理作用域内的数据。 5. **控制器...
本文实例讲述了AngularJS与服务器Ajax交互操作。分享给大家供大家参考,具体如下: AngularJS从Web服务器请求资源都是通过Ajax来完成,所有的操作封装在$http服务中,$http服务是只能接收一个参数的函数,这个参数是...
服务是AngularJS中的单例对象,它们负责执行特定任务,如$http用于与服务器通信,$location用于处理URL,$q用于异步编程等。 **7. Routing:** AngularJS的路由功能使得在单页面应用中导航变得简单,通过uirouter或...
2. **前后端分离**:AngularJS处理前端交互,Node.js作为API服务器,提供RESTful接口。 3. **数据流**:AngularJS通过$http服务向Node.js发送Ajax请求,Node.js处理数据并返回。 4. **安全实践**:如JWT(JSON Web ...
AngularJS 的服务是可复用的代码单元,如 $http 用于与服务器进行 HTTP 通信,$scope 作为作用域,管理着模型数据,$q 用于异步操作的承诺(Promise)管理等。服务可以通过依赖注入在多个组件之间共享,提高代码的...
1. **创建(Create)**:在AngularJS中,创建新记录通常涉及到向服务器发送POST请求。这可以通过AngularJS的$http服务或者使用ngResource模块来实现。ngResource提供了一个资源对象,可以方便地执行CRUD操作。你需要...