Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 正在与getList斗争的RestAngular_Angularjs_Restangular - Fatal编程技术网

Angularjs 正在与getList斗争的RestAngular

Angularjs 正在与getList斗争的RestAngular,angularjs,restangular,Angularjs,Restangular,我知道这个问题已经被问过很多次了。我有一个错误: Response for getList SHOULD be an array and not an object or something else 问题是我的回答是数组 [{"id":1,"token":"HOME","traductions":[{"id":1,"value":"accueil","langue":{"id":1,"langue":"fran\u00e7ais","locales":"fr_FR"}},{"id":2,"v

我知道这个问题已经被问过很多次了。我有一个错误:

Response for getList SHOULD be an array and not an object or something else
问题是我的回答是数组

[{"id":1,"token":"HOME","traductions":[{"id":1,"value":"accueil","langue":{"id":1,"langue":"fran\u00e7ais","locales":"fr_FR"}},{"id":2,"value":"home","langue":{"id":2,"langue":"anglais","locales":"en_EN"}}]},{"id":2,"token":"CONTACT","traductions":[{"id":3,"value":"contact","langue":{"id":1,"langue":"fran\u00e7ais","locales":"fr_FR"}}]}]
这是我的简单控制器

traduction.controller('traductionController', ['$scope', 'Restangular', function($scope, Restangular) {

    var containers = Restangular.all('intranetBS/web/app_dev.php/interne/traductions'); // correct route, checked it

    containers.getList().then(function(stuff) {
         $scope.containers = stuff;
    });

}]);
有解决办法吗?
非常感谢

您确定这是在实际执行重新启动的代码时收到的响应,而不是在控制台中手动测试端点吗?上次我遇到这个错误,是因为restangular得到的是错误的html页面而不是json(或者类似的东西。当然没有得到预期的json)可能是@DTing的重复:不确定这两个是否真的是重复的。此响应是一个数组。
.config(function(RestangularProvider){
   RestangularProvider.setBaseUrl('/api');
   RestangularProvider.addResponseInterceptor(function(data, operation, what, url, response, deferred) {
      var extractedData;
      if (operation === "getList") {
        extractedData = data.traductions;
      } else {
        extractedData = data;
      }
      return extractedData;
    });
})