Come funziona Ajax

Abbiamo visto in questo post cosa c’è dietro a questa tecnologia che abbraccia sempre più il web e i siti internet con programmazione Ajax che vogliono fornire servizi veloci e freschi all’utente.

ajax1.gifCome è facile dedurre dall’acronimo stesso, AJAX si usa con il linguaggio di scripting JavaScript, linguaggio ben noto agli sviluppatori web. Per chi non fosse pratico di questa tecnologia, JavaScript è un vero e proprio linguaggio di programmazione, che può essere inserito all’interno delle pagine web e che viene eseguito dal browser quando la pagina giunge sul computer del visitatore.

Il componente fondamentale per ricevere contenuti dall’esterno attraverso un indirizzo (URL) standard, è il componente XMLHttpRequest, originariamente introdotto da Microsoft, ma ormai disponibile in tutti i browser moderni. Questo oggetto accetta in ingresso un indirizzo HTTP standard, e riceverà in risposta dei contenuti (contrariamente a quanto si può pensare, possono anche non essere in formato XML, ma semplice file testuali).

E’ molto importante spiegare il significato dell’aggettivo ASINCRONO presente nell’acronimo. Si dice infatti che le richieste AJAX sono asincrone, perchè una volta lanciata la richiesta di contenuti, non è necessario attendere la risposta, anzi di solito si procede oltre con il flusso del programma, eventualmente lanciando altre richieste indipendenti. Questa asincronia può facilmente confondere il lettore o l’utilizzatore inesperto, tuttavia si ripete che non è affatto una caratteristica chiave, la si consideri come un utilizzo avanzato. Il lettore meno esperto può tranquillamente continuare a pensare che la risposta giunga immediatamente dopo la richiesta.

Una volta ricevuti i contenuti, è facile pensare di poter utilizzare le funzioni di manipolazione del modello ad oggetti del documento (DOM) messe a disposizione da JavaScript per modificare l’aspetto della pagina corrente ed introdurre i contenuti appena ricevuti. In pratica, sempre usando Javascript, è possibile accedere alle varie parti della pagina, per effettuare modifiche di aspetto e di contenuto.