JSON-data de iOS en PHP-script

¿Cómo puedo acceder a los datos json dentro de un script php, que recibió vía http-post? Estoy haciendo lo siguiente en el lado iOS:

NSData *data = [NSJSONSerialization dataWithJSONObject:object options:0 error:NULL]; NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://example.com/script.php"]]; [req setHTTPMethod:@"POST"]; [req setHTTPBody:data]; [NSURLConnection sendSynchronousRequest:req returningResponse:&response error:&err]; 

¿Cómo accedo a estos datos en php-script? En otras palabras, cuando llamo a json_decode(...) en el script php, ¿qué es ... ?

Si está enviando su JSON en el método POST, se puede recibir en PHP con el código siguiente

 <?php $handle = fopen('php://input','r'); $jsonInput = fgets($handle); // Decoding JSON into an Array $decoded = json_decode($jsonInput,true); ?> 

La request de publicación cuando se envía con iOS no funciona con $ _POST. Si se emite una request similar usando js, ​​el json en la publicación funciona.

En el script php, toma los datos POST y realiza

 json_decode($data); 

y eso te dará un object con el que puedes trabajar.

 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; [request setHTTPMethod:@"POST"]; [request setHTTPBody: jsonData]; [request setValue:@"text/html" forHTTPHeaderField:@"Content-Type"]; [request setValue:[NSString stringWithFormat:@"%d", [jsonData length]] forHTTPHeaderField:@"Content-Length"]; 

Este código se puede usar para enviar una respuesta.