欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

angularjs實現(xiàn)與服務(wù)器交互分享

 更新時間:2014年06月24日 10:16:26   投稿:hebedich  
AngularJS是Google開發(fā)的純客戶端JavaScript技術(shù)的WEB框架,用于擴展、增強HTML功能,它專為構(gòu)建強大的WEB應(yīng)用而設(shè)計。

真正的應(yīng)用需要和真實的服務(wù)器進行交互,移動應(yīng)用和新興的Chrome桌面應(yīng)用可能是個例外,但是對于此外的所有應(yīng)用來說,無論你是想把數(shù)據(jù)持久化到云端,還是需要與其他用戶進行實時交互,都需要讓應(yīng)用與服務(wù)器進行交互。

為了實現(xiàn)這一點,Angular提供了一個叫做$http的服務(wù)。它提供了一個可擴展的抽象方法列表,使得與服務(wù)器的交互更加容易。它支持HTTP、JSONP和CORS方式。它還包含了安全性支持,避免JSON格式的脆弱性和XSRF。它讓你可以輕松地轉(zhuǎn)換請求和響應(yīng)數(shù)據(jù),甚至還實現(xiàn)了簡單的緩存。

例如,我們打算讓購物站點從服務(wù)器上獲取商品信息,而不是從內(nèi)存假數(shù)據(jù)獲取。如何編寫服務(wù)端代碼已經(jīng)超越了本書的范疇,所以,我們僅僅來想象一下,比方說我們已經(jīng)創(chuàng)建了一個服務(wù)器,當(dāng)查詢/products 路徑時,它會以JSON格式返回一個商品列表。

返回的響應(yīng)示例如下:

[

 {

  "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

 }

 ...etc...

]

我們可以像下面這樣編寫查詢代碼:

function ShoppingController($scope, $http) {

 $http.get('/products').success(function(data, status, headers, config) {

  $scope.items = data;

 });

}

然后在模板中這樣使用它:

<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>

 </div>

</body>

正如我們前面講過的,從長遠(yuǎn)來看,讓服務(wù)來代理與服務(wù)器交互的工作對我們有好處,這個服務(wù)可以被多個控制器共享。

相關(guān)文章

最新評論