Javascript 如何使用angular从资源返回数据

Javascript 如何使用angular从资源返回数据,javascript,angularjs,resources,Javascript,Angularjs,Resources,我正在创建与Rest服务器交互的服务层,但我在ngResource承诺方面遇到了一些问题 var grupogestion= angular.module('app.grupogestion.services', ['ngResource']); grupogestion.factory('Grupogestion', ['$resource', function ($resource){ return $resource('api/grupogestiones/:action/:id

我正在创建与Rest服务器交互的服务层,但我在ngResource承诺方面遇到了一些问题

var grupogestion= angular.module('app.grupogestion.services', ['ngResource']);

grupogestion.factory('Grupogestion', ['$resource', function ($resource){
    return $resource('api/grupogestiones/:action/:id.:format',
            {
                action: '@action', id:'@id', format:'json'
            },
            {
                'get': {method:'GET'},
                'post': {method:'POST',headers : {'Content-Type': 'application/x-www-form-urlencoded'}},
                'save': {method: 'POST',headers : {'Content-Type': 'application/x-www-form-urlencoded'}}
            }
    );
}]);

grupogestion.service('GrupogestionService',['Grupogestion', function (Grupogestion){
    this.findAll = function (){
        Grupogestion.get({action: 'index'},function (data, status, headers, config){
            return data;    
        });
    }

    this.save = function (grupogestion){
        Grupogestion.save({'action':'add'},$.param(grupogestion)).$promise.then(
            function(data){
                alert('k');
                return data;
            },
            function(error){
                alert('j');
                return error;
            }
        );
    }
}]);
当我从angular controller调用
var response=GrupogestionService.save(data)
时,我不会在调用函数的同时获取数据,因此问题是:如何修改GrupogestionService以将数据返回到控制器

我试着还清诺言,但做不到。谢谢你的帮助

// service code
grupogestion.service('GrupogestionService', ['Grupogestion', function (Grupogestion) {
    this.findAll = function () {
        Grupogestion.get({action: 'index'}, function (data, status, headers, config) {
            return data;
        });
    };

    this.save = function (grupogestion) {
        return Grupogestion.save({'action': 'add'}, $.param(grupogestion));
    }
}]);

//run in your controller
var response = GrupogestionService.save(data).$promise.then(
    function (data) {
        alert('k');
        return data;
    },
    function (error) {
        alert('j');
        return error;
    }
);