Intro.
Hacer post desde nuestro dispositivo móvil es una de las partes mas importantes al momento de interactuar con otros medios, ya que esto nos sirve para mandar parámetros y ya dependiendo de estos y a su destino es la funcionalidad que tendrá.
Rollo:
Este método empleado debo de mencionar que lo utilizo en mi proyecto final de abrir y cerrar una puerta desde nuestro dspositivo móvil.
Código:
El codigo ejemplo que uso es el mandar parámetros a un archivo php y este imprimira cualquier valor obtenido
iOS
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-(void)postData:(int)a | |
{ | |
NSURL *url = [NSURL URLWithString:@"http://abimage.comli.com/dispmoviles/iOS/WS/samplePost.php?"]; | |
//URL a usar para mandar los parametros en este caso utilizo mi pagina ejemplo | |
NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:url | |
cachePolicy:NSURLRequestReloadIgnoringCacheData | |
timeoutInterval:60]; | |
[req setHTTPMethod:@"POST"]; //indicamos que es un metodo POST | |
[req setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; | |
//Indicamos en que formato esta lo que mandamos | |
//Valor del post | |
NSString *postData = [NSString stringWithFormat:@"prueba=algunValor"]; //Mandamos el valor | |
NSString *length = [NSString stringWithFormat:@"%d", [postData length]]; | |
[req setValue:length forHTTPHeaderField:@"Content-Length"]; //indicamos en nuestro paquete el tamaño de | |
//nuestros datos | |
NSLog(@" tamano: %d", postData.length); //Podemos imprimir nuestro datos para saber cuales son | |
[req setHTTPBody:[postData dataUsingEncoding:NSASCIIStringEncoding]]; //Mandamos el contenido de este | |
NSHTTPURLResponse* urlResponse = nil; //Vemos nuestra respuesta | |
NSError *error = [[NSError alloc] init]; //creamos un parametro valor, donde nos servira mucho para | |
//debugiar algunos errores generados | |
NSData *responseData = [NSURLConnection sendSynchronousRequest:req | |
returningResponse:&urlResponse | |
error:&error]; | |
//Guardamos los parametros que obtuvimos en la respuesta | |
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSASCIIStringEncoding]; //Guardamos en estring | |
NSLog(@"Respueta: %@", responseString); //imprimimos lo obtenido | |
} |
PHP
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
print $HTTP_RAW_POST_DATA; | |
?> |
Resultado
En la imagen anterior, podemos ver la respuesta obtuvida, tanto el tamaño que mandamos y lo que imprimio nuestro servidor.
No hay comentarios:
Publicar un comentario