HTML and CSS Reference
In-Depth Information
Se il quantitativo di dati memorizzati eccede la dimensione massima consentita dalle im-
postazioni dello Storage (generalmente di 5 MB, ma variabile a discrezione del browser o
dell'utente), viene generato un errore di tipo QUOTA_EXCEEDED_ERR e l'operazione di
scrittura fallisce. È interessante notare come in alcuni browser (come per esempio Chrome)
la capacità reale di archiviazione risulti dimezzata (2.5 MB), in quanto le stringhe vengono
salvate con codifica UTF-16 (che richiede 2 byte per ogni carattere).
La possibilità di avere un sistema di persistenza lato client apre nuovi interessanti sce-
nari nello sviluppo di applicazioni web: possiamo, per esempio, dotare un CMS (Content
Management System) di una funzionalità per il salvataggio automatico dei dati immessi
dall'utente, così da evitarne la perdita accidentale, oppure aggregare i dati da inviare al ser-
ver, riducendo il numero di chiamate HTTP effettuate in un'applicazione che sfrutta forte-
mente AJAX, e molto altro ancora.
WebSocket
La possibilità di scambiare dati tra client e server senza dover ricaricare completamente la
pagina è stata alla base del successo di AJAX. In molti casi viene effettuata puntualmente
una chiamata al server a seguito di una specifica azione dell'utente, per esempio per l'invio
asincrono di un form o di una richiesta per l'aggiornamento di una porzione di pagina. Altri
scenari prevedono l'uso di tecniche di polling attraverso AJAX: la pagina, a intervalli re-
golari, effettua una richiesta automatica al server, per esempio, per sapere se è necessario
notificare all'utente la presenza di una nuova email. In altri casi risulta invece necessario
mantenere aperto un canale di comunicazione continua tra client e server, come nel caso di
una chat in tempo reale. In questo tipo di applicazioni AJAX mostra i propri limiti e quindi
è bene ricorrere a WebSocket, che consente la gestione di un canale di comunicazione bi-
direzionale tra il server e il client, costantemente aperto e gestito nativamente dal browser.
nota
Le
specifiche
complete
di
WebSocket
API
sono
disponibili
all'indirizzo
http://aspit.co/a1p .
Utilizzare WebSocket è molto semplice: è sufficiente, infatti, creare un'istanza di We-
bSocket specificando l'indirizzo del servizio con cui vogliamo comunicare attraverso il
protocollo ws:// . Una volta istanziato, l'oggetto apre automaticamente il canale con il
server e una volta che questo è stabilito scatena l'evento onopen . A questo punto possia-
Search WWH ::




Custom Search