2012-05-25 16 views

Respuesta

10

El siguiente código debe ayudar

NSData *imageData = UIImagePNGRepresentation(image); 

NSURL *yourURL = ... 
NSMutableURLRequest *yourRequest = [NSMutableURLRequest requestWithURL:yourURL 
                  cachePolicy:NSURLRequestUseProtocolCachePolicy 
                 timeoutInterval:60.0]; 
//Set request to post 
[yourRequest setHTTPMethod:@"POST"]; 

//Set content type 
[yourRequest setValue:@"image/png" forHTTPHeaderField:@"Content-Type"]; 

// Set authorization header if required 
... 

// set data 
[yourRequest setHTTPBody:imageData]; 


// create connection and set delegate if needed 
NSURLConnection *yourConnection = [[NSURLConnection alloc] initWithRequest:yourRequest 
                    delegate:self 
                  startImmediately:YES]; 

Tenga en cuenta que, se supone que está utilizando ARC.

+0

Esto funcionó para mí ... Gracias. –

+0

está bien, pero todavía se deben usar los métodos de delegado para recibir la respuesta o el error, ¿verdad? – marciokoko

+0

¿Cuál debería ser el tipo de contenido si estoy publicando NSData que está hecho desde NSString? – Satyam

1

Puede utilizar la biblioteca ASIHTTPRequest: http://allseeing-i.com/ASIHTTPRequest/

Entonces es bastante fácil:

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 

// Upload an NSData instance 
[request setData:imageData withFileName:@"myphoto.jpg" andContentType:@"image/jpeg" forKey:@"photo"]; 

información sobre cómo utilizar: http://allseeing-i.com/ASIHTTPRequest/How-to-use

+0

De http://allseeing-i.com/ASIHTTPRequest/How-to-use: "Tenga en cuenta que ya no estoy trabajando en esta biblioteca; es posible que desee considerar el uso de otra cosa para nuevos proyectos :)" Entonces no aconsejo usar la biblioteca. – Mert

2

Puede comprobar esta respuesta, si estás bien con el uso de NSURLConnection https://stackoverflow.com/a/10750428/591951

En esta publicación se explica cómo POST a n archivo de audio, pero se puede subir cualquier archivo utilizando el mismo método

Cuestiones relacionadas