Sto riscontrando qualche problema con l'invio di dati POST a uno script PHP con NSURLConnection. Questo è il mio codice:iPhone invia 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);
E la mia script.php è semplice come questo:
<?php
echo $_POST['mydata'];
?>
Questo hanno lavorato per me in passato, ma per qualche motivo l'uscita che ricevo da NSLog(@"responseData: %@", responseData);
ora è solo "<>" anziché "theData".
Probabilmente qualche errore da qualche parte ma non riesco a trovarlo? Qualche idea?
Ah sì ... grazie. Ma l'output responseData è come "<48656c6c 6f326f72 6c64>", non si stampa NSData con% @? –
grazie per [request setValue: @ "xxx" forHTTPHeaderField: @ "Content-Type"]; – Nils
Ciao, io uso "text/xml; charset = utf-8" con HTTP Content-Type, la richiesta di invio è ok ma io uso "application/xml; charset = utf-8" e anche andare insieme HTTP Content-Type è un problema , dati restituiti: "Il server non può servire la richiesta perché il tipo di supporto non è supportato". Quindi cosa succede? – AmyNguyen