次のコードを使用して、API からデータを取得できるファクトリ サービスを作成しました。
app.factory('Book', ['$resource','$http', function($resource, $http) {
return $resource('http://someurl.com/api/book/', {}, {
query: {method:'GET', isArray:false}
});
}]);
上記のコードはデータをフェッチするために機能しますが、解析できる単一のサービスが必要であり、すべての異なる API 呼び出しにアクセスできます。以下は$httpサービスで構築する理論的な方法ですが、これを機能させることはできません。また、 $resourceの機能も備えたいと考えています。私が望んでいたのは、サービスに添付された関数に各$resourceの「呼び出し」を分離する方法を構文で誰かに教えてもらうことでしたか? 以下の$httpサービスと同様です。
app.service('dataService', ['$resource','$http', function($resource, $http) {
var urlBase = 'http://someurl.com/api/';
this.getBooks = function () {
return $http.get(urlBase + 'book')
};
this.getArticles = function () {
return $http.get(urlBase + 'articles');
};
}]);