$ resource让我做恶梦。现在我的服务中有这样的东西:
makeCall: function(auth, data, new, old){
return this.resource(auth).putRequest({id: data.id, thing1: new, thing2: old}).$promise
}
resource: function(auth){
return(
$resource(config.url, {id: '@id'}, {
putRequest: {
method: 'PUT',
params: {thing1: '@thing1', thing2: '@thing2'},
url: config.url + '/user/:id/update'
headers: {authorization: auth}
})
);
这会根据请求向URL发送PUT请求,并正确设置id参数。但是,问题是当有效负载只需要由thing1和thing2组成时,id也会出现在有效负载中。
答案 0 :(得分:1)
调用资源时,您可以指定urlParams和formBody Params,如此
resource(auth).putRequest({id: data.id}, {thing1: new, thing2: old}).$promise
第一个参数是urlParams,第二个是formBody,有关详细信息,请查看documentation