Flash: LoadVars e XML per inviare dati in POST

Venerdì 20 Luglio, 2007

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:

Actionscript:
  1. var s_lv:LoadVars = new LoadVars();

A questo possiamo aggiungere le variabili in POST in modo assai semplice:

Actionscript:
  1. s_lv.title = "Hello";
  2. s_lv.subtitle = "Hello World";

Prepariamo l'oggetto che riceverà la risposta dal Web Server (nella stdout) - se PHP basta fare un echo:

Actionscript:
  1. var r_xml:XML = new XML();
  2. r_xml.ignoreWhite = true;

A questo punto non ci rimane che inviare:

Actionscript:
  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:

Actionscript:
  1. r_xml.onLoad = function(success:Boolean) {
  2.     if(success) {
  3.         // elaborazione risultato
  4.     }
  5. };

Post correlati