Dialogare con un server REST remoto in xml con php e JQuery.
Uno dei problemi più comuni che si presentano ai programmatori del web 2.0 è dialogare con un server REST in xml o in JSON a seconda dei casi.
La prima cosa da fare è creare uno script PHP che si occupi di fare da Proxi tra il server REST e quello che contiene la nostra applicazione, infatti la richiesta XmlHttpRequest di Javascript è per motivi di sicurezza legata esclusivamente al domino su cui viene effettuata.
Scriviamo quindi per prima cosa la parte PHP che ci è necessaria, utilizzando CURL è semplicissimo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?php // Per sicurezza è meglio che l'hostname del server rest non sia un parametro // ma sia scritto staticamente. define('HOSTNAME', 'http://www.wheretherestserveris.com/'); // Prende il path del file rest $query = urlencode($_GET['query']); $url = HOSTNAME.$query; // Apre Curl $mycurl = curl_init($url); // Setto curl per restituire solo il contenuto senza header curl_setopt($mycurl, CURLOPT_HEADER, false); curl_setopt($mycurl, CURLOPT_RETURNTRANSFER, true); $myxml = curl_exec($mycurl); // Imposto gli header XML header("Content-Type: text/xml"); echo $myxml; curl_close($mycurl); ?> |
Salviamo il nostro file proxi sul nostro dominio con il nome desiderato (Es. myrestserver.php) , e poi utilizziamo jQuery e il plugin jParse per interpretare comodamente l’xml, ecco uno snippet di esempio del codice javascript necessario:
1 2 3 4 5 6 7 | $(function(){ $('#divchevoglio').jParse({ ajaxOpts: {url: 'myrestserver.php?query=iwantthis.xml'}, elementTag: ['field1', 'field2', 'field3'], output: ' <div><ul><li>jpet0</li><li>jpet1</li><li>jpet2</li></div>' }); }); |
Per approfondimenti su opzioni, callback etc. guardate il sito ufficiale di jParse
Spero di essere stato utile.

Dialogare con un server REST remoto in xml con php e JQuery….
Uno dei problemi più comuni che si presentano ai programmatori del web 2.0 è dialogare con un server REST in xml o in JSON a seconda dei casi….