$respuesta='{"Nombre":"las dos setas","numero de votos":23,"valoraciones":{"staff":10,"position":10 ,"fun_factor":10,"atmospher":10,"value":10,"facili ties":10,"cleanliness":10}}';
lo devuelo al cliente mediante un
Código PHP:
echo $respuesta;
El cliente esta esperando con una sesion CURL:
Código PHP:
$ch = curl_init();
$tipo="JSON";
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array ('Accept: '.$tipo));
$respuesta = curl_exec($ch);
Y cuando se pone a decodificar el JSON con
Código PHP:
$respuesta=json_decode($respuesta);
Pues no sale nada, y eso es debido a que la sesion CURL me introduce un espacio en blanco despues del string, eso lo comprobe al hacer un echo+terminadores tal que:
Código PHP:
echo "------------".trim($respuesta)."-----------------";
y aun asi por el navegador me sale:
------------{"Nombre":"las dos setas","numero de votos":23,"valoraciones":{"staff":10,"position":10 ,"fun_factor":10,"atmospher":10,"value":10,"facili ties":10,"cleanliness":10}} -----------------
Donde si os fijais sigue habiendo un hueco en blanco [ 10}} --- ]
Las conclusiones que saco es que la sesion CURL introduce ese maldito espacio al transimitir el objeto y cuando llega al cliente es como si fuera parte del objeto y no soy quien a eliminarlo.
Lo que mas me mosquea es que en el servicio web tengo otros 2 servicios mas, que hacen la misma tarea, componer el objeto JSON y enviarlo a traves de un echo al mismo cliente, y en ninguno de los dos primero me da problemas la sesion curl :S
La verdad es que es un poco raro, os ha pasado a alguno una cosa parecida?? o se os ocurre que tipo de funciones pueden estar incorporando un espacio en blanco adicional??
saludos a todos