実際のアプリケーションは、実際のサーバーと対話する必要があります。モバイルアプリケーション、および新しいChromeデスクトップアプリケーションは例外かもしれませんが、他のすべてのアプリケーションでは、クラウドにデータを保持するか、他のユーザーとリアルタイムでやり取りするかどうかにかかわらず、サーバーと対話する必要があります。
これを達成するために、Angularは$ HTTPと呼ばれるサービスを提供します。サーバーとの相互作用を容易にするための抽象的なメソッドの拡張可能なリストを提供します。 HTTP、JSONP、およびCORSメソッドをサポートしています。また、JSON形式とXSRFの脆弱性を回避するためのセキュリティサポートも含まれています。リクエストデータと応答データを簡単に変換することができ、簡単なキャッシングを実装できます。
たとえば、ショッピングサイトに、メモリから偽造されたデータの代わりに、サーバーから製品情報を取得するつもりです。サーバーコードの書き方はこの本の範囲を超えているので、たとえば、 /製品パスをクエリするときに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,本当に」、「価格」:6.95} ...など...]このようなクエリコードを書くことができます:
function ShoppingController($ Scope、$ http){$ http.get( '/products')。成功(function(data、status、headers、config){$ scope.items = data;});}次に、このようにテンプレートで使用します。
<body ng-controller = "ShoppingController"> <h1> Shop!</h1> <table> <tr ng-repeat = "アイテムのアイテム"> <td> {{item.title}} </td> <td> {{item.description}}} </td> <td> <td> <td> <td>通貨}} </td> </tr> </table> </div> </body>前にも言ったように、長期的には、サービスプロキシをサーバーと対話させることは有益であり、このサービスは複数のコントローラーによって共有できます。