Pregunta

Estoy tratando de subir una imagen de lo que estoy haciendo clic con la ayuda de la cámara. Estoy tratando el código siguiente para cargar la imagen en el servidor remoto.

-(void)searchAction:(UIImage*)theImage
{
    UIDevice *dev = [UIDevice currentDevice];
    NSString *uniqueId = dev.uniqueIdentifier;

    NSData * imageData = UIImagePNGRepresentation(theImage);

    NSString *postLength = [NSString stringWithFormat:@"%d",[imageData length]];

    NSString *urlString = [@"http://www.amolconsultants.com/im.jsp?" stringByAppendingString:@"imagedata=iPhoneV0&mcid="];
    urlString = [urlString stringByAppendingString:uniqueId];
    urlString = [urlString stringByAppendingString:@"&lang=en_US.UTF-8"];

    NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
    [request setURL:[NSURL URLWithString:urlString]];
    [request setHTTPMethod:@"POST"];
    [request setValue:postLength forHTTPHeaderField:@"Content-Length"];
    [request setHTTPBody:imageData];

    NSURLConnection *conn=[[NSURLConnection alloc] initWithRequest:request delegate:self];
    if (conn == nil) 
    {
        NSLog(@"Failed to create the connection");
    }
}

Sin embargo, nada se está publicada. No sale nada en la ventana de consola también. Estoy llamando a este método en la hoja de acción. Cuando el usuario hace clic en el botón 1 de la hoja de la acción este método se llama para publicar la imagen.

Puede alguien ayudarme con esto ...

Cualquier código será muy útil ...

Gracias por adelantado ...

¿Fue útil?

Solución

Puede utilizar las bibliotecas de una tercera parte llamada ASI-petición http . Se simplyfies para que la mayor parte de los trabajos duros. En su caso, usted acaba de hacer de la siguiente manera:

ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request appendPostData:imageData];
[request setRequestMethod:@"PUT"];
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top