Cache manifest HTML 5: une application web offline
20 février 2012 | Marb | Aucun commentaire Développement

Si vous faites partie de ceux qui passent leur temps à expérimenter les nouvelles fonctionnalités apportées par HTML 5, alors vous avez certainement entendu parler du cache manifest. Vous savez, cette nouvelle technique qui permet aux applications web d’être accessibles et navigables en cas d’une coupure de connexion avec le serveur.
La fonctionnalité AppCache de HTML 5 va permettre à votre application non seulement d’être accessible en offline mais aussi :
- de gagner en rapidité – les ressources en cache vont être récupérées localement, d’où plus de rapidité au chargement
- d’effectuer moins de chargement depuis le serveur – seules les ressources mises à jour seront récupérées depuis le serveur
Comment ça marche ?
Il faut d’abord signaler à l’application quelles ressources doivent être stockées en cache. Pour ça, c’est dans le fichier manifest (.appcache) que ça se passe. Ce fichier est un listing de toutes les ressources nécessaires au bon fonctionnement de l’application et qui doivent donc êtres accessibles à tout moment même après une coupure de réseau : fichier JavaScript, CSS, images, etc…
Au premier chargement d’une page de votre site, si un fichier manifest est appelé, il est parcouru et les ressources qu’il contient sont stockées une à une dans le cache.
Le plus simple est de générer dynamiquement votre fichier cache manifest en créant un module au sein de votre CMS préféré par exemple.
Pas mal, pas mal!! Mais… c’est quoi les inconvénients ?
Eh bien, ils sont plutôt minimes.
D’abord, le cache manifest est supporté par la plupart des navigateurs :
- Chrome 4.0 et ultérieur
- Firefox 3.5 et ultérieur
- Safari 4.0 et ultérieur
- Opéra 10.6 et ultérieur
- Safari iPhone à partir d’iOS 2.1
- Navigateur Android à partir de la version 2 de l’OS
J’entends déjà les utilisateurs d’Internet Explorer râler : « IE ne supporte pas cette fonctionnalité… ». Eh bien si… Le cache manifest sera supporté à partir de IE 10.
De toute façon, les applications offline sont principalement destinées aux smartphones et autres tablettes tactiles, susceptibles de subir des déconnexions. Les navigateurs Android et iPhone, supportent déjà cette fonctionnalité. Aucun problème du côté de la compatibilité donc !
La réelle contrainte vient de la taille maximale de stockage. En effet, il est impossible de stocker une application au delà d’un certain poids. Celle-ci est variable selon le navigateur : Chrome plantera au delà de 5Mo alors qu’il est possible d’augmenter la taille du cache jusqu’à 60Mo environ sur Safari iOS 4 et 5.
En conclusion, la technologie AppCache de HTML 5 offre un avantage non négligeable : votre application reste totalement accessible même après une coupure de réseau lorsque vous rendez visite à votre grand-mère habitant au fin fond de la campagne.
De plus, installer ce système est simplissime, donc… pourquoi s’en priver !
Pour plus d’informations sur la création d’une application web offline je vous invite à lire l’article Dive Into HTML5: Let’s Take This Offline de Mark Pilgrim.
Popularité de l'article : 3%

