在我的AngularJS项目中,我试图使用Restangular getList方法,但是它返回一个错误,因为API响应不是直接的数组,而是包含数组的对象。
{ "body": [ // array elements here ],"paging": null,"error": null }
Restangular错误消息是:
Error: Response for getList SHOULD be an array and not an object or something else
有可能告诉Restangular,它正在寻找的数组是在body属性内部吗?
是的,请参阅
Restangular documentation.您可以像这样配置Restangular:
原文链接:https://www.f2er.com/angularjs/144770.htmlrc.setResponseExtractor(function(response,operation) { if (operation === 'getList') { var newResponse = response.body; newResponse.paging = response.paging; newResponse.error = response.error; return newResponse; } return response; });
编辑:似乎Restangular的API现在已经改变了,为了更好,目前使用的方法是addResponseInterceptor。传递的函数可能需要进行一些调整。