Ich habe eine Methode geschrieben:
-(id)postAndParseJson:(NSMutableDictionary *)theDictionary action:(NSString *)action type:(NSString *)myType {
NSString *newJSON = [theDictionary JSONRepresentation];
NSLog(@"was gesendet wird: %@", newJSON);
NSURL *url = [NSURL URLWithString:@"http://api.uat.ushi.cn/user/getProfile?user_id=3"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
NSLog(@"zu URL = %@",url);
[request appendPostData:[newJSON dataUsingEncoding:NSUTF8StringEncoding]];
[request startSynchronous];
NSString *responseString = [request responseString];
NSMutableDictionary* responseDict = [responseString JSONValue];
NSLog(@"responseString = %@",responseString);
return responseDict;
}
Die Methode ist einfach, sie sendet den Wert und analysiert den Rückgabewert. Wenn ich sie ausführe, erhalte ich die Konsolenausgabe:
2012-05-02 12:06:29.414 Ushi.com[775:f803] was gesendet wird: {"phone":"123456","password":"123456","user_name":"tan"}
2012-05-02 12:06:29.416 Ushi.com[775:f803] zu URL = http://api.uat.ushi.cn/user/getProfile?user_id=3
2012-05-02 12:06:29.449 Ushi.com[775:f803] -JSONValue fehlgeschlagen. Fehler lautet: Ungültiger Token-Start [<]
2012-05-02 12:06:29.449 Ushi.com[775:f803] responseString = Apache Tomcat/6.0.20 - Fehlerbericht<!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--> HTTP Status 405 - Anforderungsmethode 'POST' nicht unterstütztTyp StatusberichtNachricht Anforderungsmethode 'POST' nicht unterstütztBeschreibung Die angegebene HTTP-Methode ist für die angeforderte Ressource nicht zulässig (Anforderungsmethode 'POST' nicht unterstützt).Apache Tomcat/6.0.20
(lldb)
Und es stürzt ab! Aber wenn ich die Zeile kommentiere [request appendPostData:[newJSON dataUsingEncoding:NSUTF8StringEncoding]];
erhalte ich die Daten, aber es stürzt auch ab. Danke im Voraus...