2013-07-31 17 views
7

Ich würde gerne wissen, ob es ein bestimmtes Tutorial gibt, wie man eine POST Anfrage mit RESTKit macht. Ich habe einige Tutorials angeschaut, aber ich habe keine gefunden, die sagen: "Genau so machen Sie eine POST-Anfrage mit RESTKit." Hilfe wird sehr geschätzt.RESTKit POST Request Tutorial

Antwort

11

Angenommen, Sie bereits ein zugeordnetes Modell haben, können Sie einfach diese ausführen:

Zuerst stellen eine requestDescriptor mit dem inverseMapping Ihrer responseDescriptor, Sie eins mit Ihrem Mapping haben angenommen.

//This is used for mapping responses, you already should have one of this. PS:[Data mapping] is a method that returns an RKObjectMapping for my model. You should create yours or use a previous created one 
RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:[Data mapping] pathPattern:nil keyPath:@"data" statusCodes:statusCodeSet]; 
[[RKObjectManager sharedInstance] addResponseDescriptor:responseDescriptor]; 

//Inverse mapping, to perform a POST 
RKRequestDescriptor *requestDescriptor = [RKRequestDescriptor requestDescriptorWithMapping:[[Data mapping] inverseMapping] objectClass:[Data class] rootKeyPath:nil]; 
[[RKObjectManager sharedInstance] addRequestDescriptor:requestDescriptor]; 

Danach, um einen POST durchzuführen, rufen Sie einfach die Methode unten. Restkit ruft die Instanz ab, die Sie veröffentlichen möchten, serialisiert sie und sendet sie an den ausgewählten Pfad.

Wenn Sie kein zugeordnetes Modell haben, lassen Sie es mich wissen.

+0

Ich weiß nicht wirklich, was ein zugeordnetes Modell ist. Ist es das: RKObjectMapping * Zuordnung = [RKObjectMapping mappingForClass: [Login-Klasse]]; [Zuordnung addAttributeMappingsFromArray: @ [@ "Benutzername", @ "Passwort"]]; Rückmapping; – comrod

+1

Ja. Ihr Objekt-Mapping hat eine Methode [Mapping inverseMapping]. Erstellen Sie einfach einen Anforderungsdeskriptor, wie ich ihn gezeigt habe, und führen Sie ihn in Ihren RKObject Manager ein, und Sie können ein postObject ausführen. Irgendwelche Zweifel, bitte fragen –

+1

Lucas, ich wünschte, ich könnte die Antwort akzeptieren: es hat mir sehr geholfen. +1 es. – PJC