我正在尝试使用AngularJS中的$ resource创建自定义POST操作,因为内置的$ save()操作不接受数组作为响应。
我需要POST到服务的数据是一个名称数组:
var namesArr = {"names" : ["Tom", "John", "Nick"]}
该服务将返回与名称匹配的Person对象数组:
[TomObj, JohnObj, NickObj]
我尝试了$ save()方法,但它不接受数组作为响应:
var namesResource = $resource('myServiceUrl');
return new namesResource(namesArr).$save(); //return a promise
所以我尝试创建一个首先执行POST的自定义操作,并在其响应中返回一个数组。以下代码不起作用,所以我正在寻找可能出错的地方的帮助:
var customNameResource = $resource('myServiceUrl', {}, {
retrieve: {method: 'POST', params: {}, isArray: true}
});
return new customNameResource(namesArr).$retrieve(); //return a $promise
编辑:该服务支持所有常规REST方法,如GET,POST,PUT,DELETE