ObjectiveCeeds › Foundation: HTTP Post Requests

Foundation: HTTP Post Requests

Von Manfred Kreß

Seite 1 von 1



Das Foundation Framework bietet viele Klassen um Daten über HTTP GET Abfragen zu laden, z.B. Strings oder Bilder. Bei einem POST Request muss man allerdings selbst Hand anlegen. Dieser Beispielcode zeigt, wie man HTML Formulare vom Mac oder iPhone verschickt.

OCFormPoster ist eine überholte Version meines WLFormPosters, der sich in meinem alten Blog großer Beliebtheit erfreute - hoffentlich wurde nicht zu viel Unfug damit getrieben. Es gibt nun eine Basisklasse, OCPostRequest, auf die der OCFormPoster aufbaut. OCPostRequest kann so als weitere Superklasse verwendet werden um z.B. SOAP oder XML-RPC Abfragen zu generieren. Der alte WLFormPoster wurde in der letzten Version als Wrapper für libcurl implementiert. Diese Änderung wurde damals hauptsächlich vorgenommen, um nicht nur multipart-forms handhaben zu können, sondern auch url-encoded-forms. Diese werden aber ehr selten gebraucht. Obendrein war der Code so nicht für das iPhone brauchbar. OCPostRequest parsed die requests jetzt wieder selbst und kann so auf dem Mac und dem iPhone verwendet werden. Es wird UTF8 Encoding verwendet, was heute auch für die meisten Aufgaben reichen sollte. Die Anwendung ist einfach:
	OCFormPoster *request = [[OCFormPoster alloc] init];
	[request setURLString:@"http://www.yourdomain_here.net/formhandler.php"];
	[request setString: @"Lorem Ipsum" forTextField: @"key1"];
	[request setString: @"Ein kleiner String" forTextField: @"key2"];
	
	NSString *result = [request submit];
	
	if ([request error] != nil)
	{
		NSLog(@"ERROR: %@" , [request error]);
	}
	NSLog(@"%@" , result);
	
	[request release];
Download über Bitbucket des Xcode Projekts. Mercurial Checkout: hg clone https://bitbucket.org/ObjectiveCeeds/postrequest


Seite: 1 von 1


Foundation: HTTP Post Requests