查询的资源配置中的错误包含数组但得到对象的预期响应

时间:2015-02-14 11:13:15

标签: angularjs node.js

我尝试了这里给出的所有方法,但没有运气。我的服务是:

angular.module('xx')

  .factory('Complaints', function($resource) {

  return $resource('/api/complaints');
  });

我的控制器是:

.controller('ListCtrl', function($scope, $alert, $location, $http, $rootScope,Complaints) {

    $scope.complaints= Complaints.query();
    console.log($scope.complaints);
    console.log(Complaints.query());
    });

我不知道什么是错的。这段代码最初工作,但下次出错了。我刚刚在app.js文件中包含了一些引用。这肯定不是问题。

1 个答案:

答案 0 :(得分:0)

默认情况下,query方法需要数据格式的数据,但不知何故,您的服务器将数据作为对象而不是数组进行响应,因此您收到错误。

因此,您需要更改服务器端代码以返回数组而不是对象,或者更改角度代码以期望对象。

要更改角度代码:

angular.module('xx')
  .factory('Complaints', function($resource) {
      // override query method config
      return $resource('/api/complaints', {}, {query: {isArray: false}});
  });