JavaScript  »  Guide  »  Guida MooTools 

Creare richieste asincrone in formato JSON



Nella precedente lezione abbiamo imparato a creare richieste asincrone utilizzando la classe Request.HTML e abbiamo dato uno sguardo alle funzionalità di base offerte dalla superclasse Request. Se desideriamo colloquiare con il server scambiando dati in formato JSON piuttosto che in formato HTML, possiamo utilizzare la classe Request.JSON, che, come Request.HTML, eredita tutte le funzionalità di Request.

Questo costruttore accetta come unico parametro un oggetto, le opzioni della richiesta, che a sua volta accetta "secure" come unica proprietà. Se quest'ultima è settata a true (è conveniente non cambiare il valore a false) verrà effettuato un controllo sulla risposta per evitare di trovare codice pericoloso.

Notazione JSON

Per informazioni sul formato JSON, sul suo utilizzo e sulle sue funzionalità vi rimando alla pagina in italiano del sito JSON.org.

Richieste con oggetti JSON

Vediamo subito come utilizzare questa classe per effettuare la nostra richiesta. L'evento onComplete contiene come parametro l'oggetto "globale" JSON restituito dal server:

	// creiamo l'istanza
	var req = new Request.JSON({
		url: 'items.php', 
		onComplete: function(item) {
			alert(item.id);		// l'id dell'articolo
			alert(item.name);	// il nome dell'articolo
		}
	});
	
	// azioniamo la richiesta
	req.get();
	
	// creiamo una nuova istanza e prendiamo in considerazione solo gli articoli che hanno costo pari a 10:
	var req2 = new Request.JSON({
		url: "items.php", 
		onComplete: function(art){
			alert("L'articolo il cui costo è pari a 10 si chiama '" + art.nome + "'"); 
		}
	}).get({'costo': 10});
	

Ovviamente l'oggetto JSON restituito dal server può anche essere un array:

	var req3 = new Request.JSON({
		url: "items_array.php", 
		onComplete: function(art){
			alert('Risultato: ' + art[0] + ', ' + art[1] + ', ' + art[2]); 
		}
	}).get();
	

Come possiamo notare, tutto ruota attorno a due parti fondamentali:

  • l'evento onComplete, che ci permette di lavorare con i dati ricevuti dal server;
  • i parametri che passiamo tramite il metodo get, che permettono di creare determinate elaborazioni sul server

Conclusione

In questa sezione all'argomento AJAX abbiamo imparato come utilizzare MooTools per creare richieste asincrone in formato HTML e JSON. Imparare ad utilizzare le classi Request, Request.HTML e Request.JSON è fondamentale per la scrittura di applicazioni di nuova generazione, quindi vi rimando anche alle pagine della documentazione ufficiale dove vengono elencate tutte le opzioni ed i metodi pubblici con tutti i loro possibili utilizzi: Request - Request.HTML - Request.JSON.

Ultimi articoli JavaScript

PhantomJS, headless browser per test con Javascript

Il tool ideale per realizzare, da terminale, operazioni in remoto su...

Creare e leggere QR Code in JavaScript

Applicazioni 'QR Code enabled' per il Web e per il mobile,...

Jquery UI Map: web-mapping con Google Maps e jQuery

Un plugin di jQuery UI per intefacciare applicaizoni Web/mobile con...

Scrollorama e Scrolldeck, slideshow d'effetto con jQuery

Plugin jQuery per ottenere Slideshow con diversi effetti di scrolling

jCanvas, un primo semplice grafico

Alla scoperta della libreria jCanvas, per semplificare il disegno e...

Altri articoli

Guide JavaScript

Guida Node.js

Il framework che permette di per usare V8, l'interprete JavaScript...

Canvas, guida ai framework

Canvas, tra gli elementi di HTML5 è forse quello di maggior impatto....

Guida Javascript: tecniche avanzate

Una guida dal taglio pratico per approfondire la programmazione a...

Altre guide

Newsletter @JavaScript

Ogni martedì, direttamente nella tua e-mail: guide, articoli, script, novità e approfondimenti tecnici su JavaScript.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Webmaster base

18 Giugno 2012 a Milano
Disponibilità: 6 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso JQuery e Ajax per Webmaster

03 Luglio 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti

Corso Webmaster base

11 Giugno 2012 a Roma
Disponibilità: 7 Posti