Json 角度工厂$resource不返回任何值

Json 角度工厂$resource不返回任何值,json,angularjs,Json,Angularjs,我最近将angular应用程序从1.3降级为1.2,因为客户端需要支持IE8 My factory resource函数在1.3中工作,但现在在返回的JSON响应中看不到$values数组 以下是factory函数的外观: offersController.factory('Offer241GetAll', function ($resource, config) { return $resource(config.apiUrl + '/TwoForOne/GetAll'); });

我最近将angular应用程序从1.3降级为1.2,因为客户端需要支持IE8

My factory resource函数在1.3中工作,但现在在返回的JSON响应中看不到
$values
数组

以下是factory函数的外观:

offersController.factory('Offer241GetAll', function ($resource, config) {
    return $resource(config.apiUrl + '/TwoForOne/GetAll');
});
以及调用该方法的控制器:

offersController.controller('offers241Controller', function ($scope, Offer241GetAll) {
    Offer241GetAll.get(function (data) {
        $scope.offers = data.$values;
    });
});
数据。$values
应包含一个数组,但
数据
仅包含:

$promise: Object
$resolved: true
奇怪的是,这个
$http.get()
方法有效,我已经确认API正在发送值:

$http.get(config.apiUrl + '/TwoForOne/GetAll').then(function(r){
    $scope.offers = r.data.$values;
});
如何继续像以前一样在1.3版中使用我的资源功能

在angular的不同版本中,这种方法的工作方式有什么不同吗?

$http和$resource方法的工作方式不同

$http get方法返回一个承诺

$resource方法Offer241GetAll.get返回一个带有承诺和承诺状态的对象。 您可以尝试以下方法:

offersController.controller('offers241Controller', function ($scope, Offer241GetAll) {
Offer241GetAll.get().$promise.then(function (data) {
    $scope.offers = data;
});
}))


关于这一点,您可以

嘿,我尝试了一下,但返回了相同的结果,即响应中缺少
$values
数组。它显然是由API发送的。我已经检查了Fiddler中的响应。你能发送一个链接到你的Fiddler示例吗?减去一到底是为了什么?如果我能用额外的代码改进我的问题,我可以在需要时提供。。。