L’oggetto NSMutableURLRequest può essere utilizzato sia in modalità GET che in modalità POST. I parametri, tuttavia, vanno formattati come se fossero in GET, cioè nella sequenza nome_campo1=valore1&nome_campo2=valore2&.... Ecco un utile snippet per semplificare la costruzione di campi:
Articoli con Tag ‘GET’
Very short snippet: NSConnection in POST con parametri
Very short trick: proxy RSS con SimplePie
Se usate Flash o Ajax per leggere Feed RSS da altri domini, dovete necessariamente dotarvi di un proxy (tunneling) a causa delle protezioni imposte da entrambe le tecnologie (vedi Tunneling e proxy server per Ajax e non solo ). Se sul vostro sito o blog è già presente SimplePie, potete scrivere una semplice proxy in questo modo:
Google AJAX Language API: tutorial sul funzionamento
Rispondo, con questo post, alla richiesta di Andrea su come inserire il traduttore di Google nel proprio web. Esistono vari modi per usufruire dei servizi di traduzione automatica messi a disposizione da Google e non solo. Possiamo usare Plugin scritti da terzi, un semplice script Javascript preconfezionato da Google stessa o imparare ad usare le API, cioè una serie di funzioni richiamabili – come vedremo – in vari modi.
Plugin
Su questa soluzione non mi dilungo, in quanto credo non sia propriamente attinente alla richiesta di Andrea, se ho compreso bene. Inoltre è una soluzione sostanzialemente valida solo per i Blog e non per un uso personalizzato e generico. Posso solo segnalare, per gli utenti WordPress, Global Translator, forse il più semplice, funzionale e diffuso Plugin di questo tipo.
Script preconfezionato da Google
Il modo più semplice per tradurre il proprio sito web o il proprio Blog è quello di inserire un semplice script Javascript fornito da Google stessa. Basta andare sul sito translate.google.com e cliccare sulla scheda ‘Strumenti‘. Da questa pagina è possibile preimpostare le funzioni di traduzione o lasciare quelle di default. Lo script è molto semplice:
1 |
e come risultato si ottiene:

Leggere i parametri di un filmato in Actionscript 3.0
Con Flash CS3 è cambiato anche il modo di leggere i parametri passati ad un filmato, sia come params che come parametri GET. Nelle precedenti versioni di Flash un parametro lo si trovava disponibile come variabile direttamente nel primo frame. Adesso, fortunatamente, abbiamo un oggetto che si occupa di gestire il passaggio dei parametri e non solo: LoaderInfo.
Flash CS3: comunicazione con un Web Server
ActionScript 3.0 introduce tutta una serie di formidabili strumenti di comunicazione, alcuni totalmente nuovi, altri rivisitati e migliorati rispetto alla precedente versione di ActionScript. Cominciamo a vedere come cambia il modo di interagire con un Web Server nel caso di una semplice comunicazione tra Flash e una pagina PHP con risposta in XML. Prima di tutto l’oggetto XML non esiste più! In ActionScript 3.0 sono stati introdotte nuove classi, alcune delle quali dedicate alla “retrocompatibilità”.
Nota: la classe XML (insieme alle classi correlate) di ActionScript 2.0 è stata rinominata XMLDocument e spostata nel pacchetto flash.xml. È inclusa in ActionScript 3.0 al fine di assicurare la compatibilità con le versioni precedenti.
In ActionScript 2.0 la comunicazione con un Web Server veniva spesso risolta sfruttando l’accoppiata degli oggetti LoadVars e XML, usando il metodo sendAndLoad() dell’oggetto LoadVars (vedi: Flash: LoadVars e XML per inviare dati in POST). Ora le cose cambiano, ma basta solo abituarsi ai nuovi nomi ed oggetti. Come indicato nel manuale, infatti:
RESTTest: utile estensione per FireFox
Ecco un’interessante estensione per FireFox (oggi rilasciata la patch 2.0.0.9) scritta da Kris Zyp. RESTTest permette di eseguire send e verificare le receive verso un URL utilizzando il protocollo REST, scegliendo tra i canonici metodi GET o POST (eventualmente personalizzabili).
RESTTest può essere utilizzato per verificare il funzionamento dell’oggetto XmlHttpRequest e quindi per testare le applicazioni che fanno uso di Ajax. Possiamo quindi simulare facilmente e velocemente richieste e risposte XHR.
Questa estensione è disegnata specificatamente per lavorare con risorse di tipo REST e supporta tutti i metodi HTTP.
Nel campo POST/PUT è possibile inserire tutti i parametri che intendiamo inviare alla nostra pagina di test, nella sintassi standard:
variabile1=valore1&variabile2=valore2&[...]variabilen=valoren
Questa estensione risulta utile anche nel test dei Feed RSS di un sito o nell’analisi dei paramteri di qualsiasi servizio RPC.
Flash: LoadVars e XML per inviare dati in POST
Ecco un ottimo modo per inviare dati in POST ad un Web Server. Useremo due oggetti: un oggetto LoadVars per spedire e un oggetto XML per ricevere (nel caso ci aspettiamo un documento di ritorno formattato in XML). Utilizzare l’oggetto LoadVars di Flash è utile sia per la creazione runtime di proprietà che saranno viste come variabili POST sia per la possibilità di specificare il metodo si spedizione: POST o GET.
Prima di tutto creiamo l’oggetto LoadVars che sarà usato per spedire:
1 | var s_lv:LoadVars = new LoadVars(); |
A questo possiamo aggiungere le variabili in POST in modo assai semplice:
1 2 | s_lv.title = "Hello"; s_lv.subtitle = "Hello World"; |
Prepariamo l’oggetto che riceverà la risposta dal Web Server (nella stdout) - se PHP basta fare un echo:
A questo punto non ci rimane che inviare:
1 | s_lv.sendAndLoad("http://miodominio.com/miapagina.php", r_xml, "POST"); |
Il metodo sendAndLoad() dell’oggetto LoadVars è molto ultile in quanto permette di specificare l’oggetto di ritorno (in questo caso il nostro oggetto XML r_xml) e il metodo di spedizione (nel nostro caso POST).
Per finire basta metterci in attesa:
1 2 3 4 5 |






Ultimi Commenti
Marco: Ti ringrazio moltissimo, mi hai illuminato
ho risolto impostando [cc_objc] //OptionViewController.m -...
Giovambattista Fazioli: @Marco: Ti consiglio un approccio credo più corretto. Se hai eseguito il subclass del tab...
Marco: Scusa lo spam.. ho notato che c’è un errore.. ecco la correzione [cc_objc] /** PrimaClasse.h **/ #import...
Marco: dimenticato.. in [cci]OptionViewController[/cci ] il [cci]@syntetize[/cci] del delegato l’ho messo
luigi: molto chiaro e semplice devo ammettere che anche scrivendo da un pà difficilmente uso delegati creati da...