2016-08-05 1 views
0

$ Ressource gibt mir Alpträume. Im Moment habe ich so etwas in meinem Dienst:

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} 
     }) 
    ); 

Dieser sendet eine PUT-Anfrage an die URL wie gewünscht, mit der id-Parameter richtig eingestellt werden. Das Problem ist jedoch, dass die ID auch in der Payload erscheint, wenn die Payload nur aus ding1 und ding2 bestehen muss.

Antwort

1

Wenn eine Ressource fordern Sie die urlParams angeben können und die formBody Params wie so

resource(auth).putRequest({id: data.id}, {thing1: new, thing2: old}).$promise 

Der erste Parameter ist die urlParams und die zweite ist die formBody, suchen Sie nach mehr Informationen in der documentation

Verwandte Themen