Restangular all(“customers”)。getList()不返回结果

时间:2013-05-22 21:39:48

标签: rest angularjs restangular

我开始使用Restangular从我的AngularJS应用程序发送RESTful请求。我在http://localhost:20080/v1/customer上部署了一个REST服务,它生成带有客户信息的JSON。

当我调试AngularJS应用程序时,它会在后端REST服务中遇到断点,但是在浏览器控制台中它始终记录“找不到状态码为0的客户”。而且,我从来没有在我注册为setResponseExtractor的函数中命中断点。

我也没有在控制台中看到任何错误。

当我在浏览器中打开http://localhost:20080/v1/customer时,我得到以下回复:

[{"customerInfo":{"name":"My Name","email":"My Email"},"id":"6ca43d0f-94a8-36e8-af3d-963584573d6d"}]

我的Restangular代码如下:

var customerModule = angular.module('customer-module',
            ['restangular' ]).config(
            ['RestangularProvider', '$httpProvider',
                function (RestangularProvider, $httpProvider)
                {
                    RestangularProvider.setBaseUrl('http://localhost\\:20080/v1');
                    RestangularProvider.setResponseExtractor(function (response, operation, what) {
                      return response;
                    });
...

customerModule.controller('CustomerCtrl',
    [ '$scope', 'Restangular', function ($scope, Restangular)
    {
    var baseCustomers = Restangular.all("customer");
    $scope.customers = baseCustomers.getList().then(function (result) {
        console.log("Got customers", response.status);
    }, function (response) {
        console.log("Failed to find customers with status code", response.status);
    });

思想?

2 个答案:

答案 0 :(得分:2)

我是Restangular的创造者。

如果您刚刚返回响应,也不必将responseExtractor添加到配置中。这就是默认情况下的作用。

如果您有任何其他问题,请与我联系!

答案 1 :(得分:1)

问题原来是访问与我的AngularJS应用程序不同的端口上运行的REST服务。

我正在将此主题移至AngularJS邮件列表 - "Problems with a basic $resource.get() call"

艾力