Ngresource指定不同的URL的get all和get one

Ngresource specify different URL's get all and get one

我有一个 RESTFUL API 的 GET URL 是

对于所有人:/customers.json

单身:/customers/1.json

angular.module('myApp.services', []).factory('Customer', function($resource) {
  return $resource('api/v1/customers/:id.json', { id:'@customers.id' }, {
    update: {
      method: 'PATCH',



    }
    }, {
    stripTrailingSlashes: false
    });
})

任何人都可以告诉我如何将两个 get 调用 URL 分开,试图检查文档,但它们似乎已关闭。

你有 query 用于收集,get 用于对象所以像这样:

angular.module('app', ['ngResource'])

.service('Customer', function($resource){
    return $resource('api/v1/customers/:id.json');
 })

.controller('ctrl', function(Customer){
    Customer.query().$promise.then(function success(result){
        console.log(result);
    }, function fail(reason){
        console.log(reason);
    }); 

    Customer.get({id: 1}).$promise.then(function success(result){
        console.log(result);
    }, function fail(reason){
        console.log(reason);
    });
})

;

你也可以指定一个方法是否为数组,查看默认的$resource方法:

{ 'get':    {method:'GET'},
  'save':   {method:'POST'},
  'query':  {method:'GET', isArray:true},
  'remove': {method:'DELETE'},
  'delete': {method:'DELETE'} };

你可以在这里查看: http://jsbin.com/cesifo/3/edit?html,js,output

和 $resource 文档在这里: https://code.angularjs.org/1.4.8/docs/api/ngResource/service/$resource