Archive for janvier 11th, 2009

Sending HTTP request from Iphone App

How to send a HTTP request from Cocoa Application

         //prepar request 	NSString *urlString = [NSString stringWithFormat:@"http://urlToSend.com"]; 	NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; 	[request setURL:[NSURL URLWithString:urlString]]; 	[request setHTTPMethod:@"POST"];         //set headers 	NSString *contentType = [NSString stringWithFormat:@"text/xml"]; 	[request addValue:contentType forHTTPHeaderField: @"Content-Type"]; 	//create the body 	NSMutableData *postBody = [NSMutableData data]; 	[postBody appendData:[[NSString stringWithFormat:@"<xml>"] dataUsingEncoding:NSUTF8StringEncoding]]; 	[postBody appendData:[[NSString stringWithFormat:@"<yourcode/>"] dataUsingEncoding:NSUTF8StringEncoding]]; 	[postBody appendData:[[NSString stringWithFormat:@"</xml>"] dataUsingEncoding:NSUTF8StringEncoding]];         //post 	[request setHTTPBody:postBody]; 	//get response 	NSHTTPURLResponse* urlResponse = nil; 	NSError *error = [[NSError alloc] init]; 	NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&error]; 	NSString *result = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]; 	NSLog(@"Response Code: %d", [urlResponse statusCode]); 	if ([urlResponse statusCode] >= 200 && [urlResponse statusCode] < 300) { 		NSLog(@"Response: %@", result);                 //here you get the response 	}