Wie zum senden von XML-POST-Anforderung mit AFNetworking
Lesen Sie Tonnen von Antworten und nicht eine einfache Antwort gefunden:
Wie sende ich eine einfache XML-URL-per POST und mit AFNetworking ?
<?xml version=’1.0’ encoding=’UTF-‐8’?>
<data>
<login>LOGIN</login>
<password>PASSWORD</password>
</data>
URL zum Beispiel: http://example.com/API/balance.php
Wenn ich:
NSDictionary *params = @{@"login":@"login",@"password":@"password"};
AFHTTPClient *client = [[AFHTTPClient alloc] initWithBaseURL:baseURL];
[client setDefaultHeader:@"Content-Type" value:@"application/xml"];
[client postPath:@"balance.php" parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {
... some code ...
}failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error retrieving data: %@", error);
}];
Ich bekomme immer XML mit Fehler aus der API: Error not well-formed (invalid token) in Zeile 1
wenn ich HTTP sniffer sehe ich, dass Content-Type:application/x-www-form-urlencoded; charset=utf-8
Werden kann dieses problem, aber ich weiß nicht genau.
Mit Hilfe von php mit curl - die richtige Antwort von der API.
Kann jeder zeigen, arbeiten beispielsweise mit dieser XML-request und URL ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das ist, weil die Standard -
[AFHTTPClient parameterEncoding]
istAFFormURLParameterEncoding
. Leider gibt es keine solche Codierung alsAFXMLParameterEncoding
, so möchte ich das erstellen der XML manuell, und legen Sie es auf eineNSMutableURLRequest
:Ich bin auch mit AFKissXMLRequestOperation, eine Erweiterung
AFNetworking
macht einfacher zu parsende XML auf Antworten.Auf Ihre
client
, sicher sein, um den Typ der request-Methode zu verwenden: