0

人のリストを作ろうとしています。私の HTTP サーバーは、 のような URL 上の人物の JSON 表現と、/person/[id].jsonのすべての人物のリストを提供できます/person.infinity.json

したがって、Personリソースを定義したコントローラーがあります。

var app = angular.module('myApp', ["ngResource"])

.controller('PersonController', function PersonController($scope, $http, $resource) {
    var Person = $resource("/person/:personId.json",
      { personId: '@id' },
      { list: {method: "GET", url: "/person.infinity.json", isArray: true}}
    );
    $scope.persons = Person.list();

});

ただし、が呼び出されると、メソッド ( )Person.list()のカスタム URLは使用されません。Chrome のネットワーク インスペクタは、リクエストが、つまり、パラメータが設定されていないデフォルトのリソース URL に対して発行されていることを明らかにします。list/person.infinity.json/person/.json

Person.list()明らかに、私はにリクエストを送りたいと思ってい/person.infinity.jsonます。

私は何を間違っていますか?

4

1 に答える 1

1

URL オーバーライドが実装されていない angular-resource 1.0.7 を使用していました。このプルリクエストで実装されました: https://github.com/angular/angular.js/pull/1890

バージョン 1.1.5 に切り替えると、問題は解決しました。

于 2013-10-27T19:54:40.990 に答える