使用角度的资源服务转换请求数据

时间:2014-07-23 20:32:15

标签: javascript angularjs

我正在尝试将我的数据数组发送到服务器。我发现这篇文章讨论了如何发送一个数组,但我无法让它工作。

AngularJS: ngResource and array of object as params to URL

我遇到的问题是我的资源像JSON一样被发回给我

{
Results: []
}

所以当我要求我的资源时,

    var collaboratorResource = api.CollaboratorList.get({Id: Id });

然后,如果我尝试类似

的话
collaboratorResource.$save($scope.collaborators);

当我查看firebug时,它显示我的数据正在以

的形式发送
{
Results: []
}

实际上,我不希望将数据作为对象发送为数组作为Results属性。我想将它作为数组[]发送。我需要这样做,因为api是遗留的并且期望。

我一直试图看看transformRequest是否有效,就像我做的那样

collaboratorResource.$save({data: $scope.collaborators, transformRequest: function (data, headers) { return data.results; }});
collaboratorResource.$save({}, $scope.collaborators);
collaboratorResource.$save($scope.collaborators);

但这似乎也不起作用。这甚至可能吗?顺便说一句,如果我像这样使用$ http,它可以工作:

$http({ method: "POST", data: $scope.collaborators, url: collaboratorUrl });

我只是不确定如何正确使用$ resource服务,因为如果可能的话,我更愿意将所有内容包装在$ resource中,如果可能的话,不要混合两者。感谢。

0 个答案:

没有答案