$http
汎用のAJAX呼び出しを行います。これは、一般的に、RESTful APIとNon-RESTful APIを含めることができることを意味します。
そして$resource
そのために特化されてRESTfulな部分。
プログラマーがランダムなURLを作成する代わりに、URLがよりよく整理されているため、Restful Apiは近年流行しています。
RESTful APIを使用してURLを作成すると、のようになり/api/cars/:carId
ます。
$resource
データを取得する方法
angular.module('myApp', ['ngResource'])
// Service
.factory('FooService', ['$resource', function($resource) {
return $resource('/api/cars/:carId')
}]);
// Controller
.controller('MainController', ['FooService', function(FooService){
var self = this;
self.cars = FooService.query();
self.myCar = FooService.get('123');
}]);
これはあなたを与えるだろうリソースオブジェクトを伴う、get
、save
、query
、remove
、delete
自動的な方法を。
$http
データを取得する方法
angular.module('myApp', [])
// Service
.factory('FooService', ['$http', function($http){
return {
query: function(){
return $http.get('/api/cars');
},
get: function(){
return $http.get('/api/cars/123');
}
// etc...
}
RESTFul APIで各共通操作を定義する方法をご覧ください。また、1つの違いはすなわち$http
戻りpromise
ながら$resource
オブジェクトを返します。AngularがrestangularのようなRESTFul APIを処理するのを助けるサードパーティのプラグインもあります
APIがのようなものである場合/api/getcarsinfo
。私たちに残されたすべては使用すること$http
です。