Di questi tempi parlare di caching delle applicazioni Web non è più cosa rara, si pensi che ogni framework offre ormai la possibilità di scegliere tra diversi engine quello più adatto al caso nostro. Tutte soluzioni, per così dire, ad alto livello di astrazione. Se invece volessimo sporcarci le mani e gestire a basso livello il nostro caching potremmo addirittura creare delle web application navigabili offline, la soluzione è HTML5 e il solito .htaccess.
La prima cosa da fare è creare un file che diventerà l'index del sito e dichiararlo con un DOCTYPE di tipo HTML5. Fatto cià aggiungeremo un nuovo MIME Type al webserver, per farlo dovremo modificare il file .htaccess nella root del nostro sito e aggiungere la riga:
AddType text/cache-manifest .manifest
A questo punto abbiamo informato il web server che i file con estensione .manifest saranno file di gestione della cache e trattarli di conseguenza. Creeremo ora il nostro file cache.manifest:
CACHE MANIFEST
CACHE
application.jar
style.css
image.png
NETWORK:
login.jsp
join.jsp
FALLBACK:
/realtime/* nocache.html
La sintassi è semplice, i file sotto la voce CACHE sono quelli che verranno effettivamente memorizzati nella cache. Se l'utente tenterà il login o la registrazione verrà richiesta la connessione. Nell'ultima sezione, FALLBACK, imponiamo al web server di mostrare la pagina nocache.html qualora si richiedesse una risorsa del tipo http://.../realtime/ultime_notizie.jsp.
L'ultima cosa da fare è aggiungere alla nostra index la direttiva:
<html manifest="/cache.manifest">
Questa è solo una veloce introduzione alle potenzialità offerte da questo metodo di lavoro, durante la scrittura del post, ho notato che qui l'argomento è affontato in maniera molto più dettagliata, dunque, qualora foste interessati potrete approfondire lì la vostra lettura.