2016-08-15 3 views
1

Wie kann ich REST POST in AngularJS aufrufen, wenn es mehrere Argumente gibt? Hier ist einfaches Beispiel:AngularJS REST POST mehrere Argumente

Java REST-Dienst (Server-Seite):

@RequestMapping(value = "/create", method = RequestMethod.POST) 
public void create(@RequestBody Person person, @RequestBody int maxPeople) { 
    service.create(person, maxPeople); 
} 

AngularJS REST Fabrik (Client-Seite):

app.factory('PersonService', function ($resource) { 
    return $resource('/api/person/create', {}, { 
     save: { method: 'POST'} 
    }); 
}); 

Winkelregler:

app.controller('PersonController', function (PersonService) { 
    PersonService.save({"name": "John"}, 2); 
}); 

Der entscheidende Fragment ist: PersonService.save({"name": "John"}, 2); Dies funktioniert nicht, ich kann nicht f wie Sie dort mehrere Parameter übergeben können. Was ist der richtige Ansatz?

+0

Geben Sie den Code in Ihrer '$ resource' Definition ein. Im Grunde gibt es für "$ resource" nur ein Argument mit so vielen Eigenschaften im Objekt. Ihr Fall wäre wahrscheinlich '{name: 'john', id: 2}' oder so ähnlich –

Antwort