Tengo algunos problemas para enviar datos POST a un script PHP con NSURLConnection. Este es mi código:iPhone enviando mensaje POST con NSURLConnection
const char *bytes = [[NSString stringWithFormat:@"<?xml version=\"1.0\"?>\n<mydata>%@</mydata>", data] UTF8String];
NSURL *url = [NSURL URLWithString:@"http://myurl.com/script.php"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:[NSData dataWithBytes:bytes length:strlen(bytes)]];
NSURLResponse *response;
NSError *err;
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err];
NSLog(@"responseData: %@", responseData);
Y mi script.php es tan simple como esto:
<?php
echo $_POST['mydata'];
?>
Esto ha funcionado para mí en el pasado, pero por alguna razón la salida que obtiene de NSLog(@"responseData: %@", responseData);
ahora es solo "<>" en lugar de "theData".
Probablemente algún error cojo en algún lado pero parece que no puedo encontrarlo? ¿Algunas ideas?
Ah sí ... aclamaciones. Pero la salida responseData es como "<48656c6c 6f326f72 6c64>", ¿no imprime NSData con% @? –
gracias por [request setValue: @ "xxx" forHTTPHeaderField: @ "Content-Type"]; – Nils
Hola, uso "text/xml; charset = utf-8" con HTTP Content-Type, la solicitud de envío está bien, pero utilizo "application/xml; charset = utf-8" y también voy de la mano. Content-Type de HTTP es un problema , los datos retornan: "El servidor no puede atender la solicitud porque el tipo de medio no está soportado". Entonces, ¿qué pasa? – AmyNguyen