"Difficilement contrôlable", par qui? Par le webmaster? Oui, c'est normal.
Le navigateur est toujours le mieux placer pour gérer les choses., parce qu'il n'est pas dans dans le scope du site (le webmaster n'a pas à s'occuper de la maintenance ou de la mise à jour du navigateur), qu'il implémente les nouveaux standards une et une seule fois pour tous les sites (code once), et qu'il sera bien plus apte à prendre les bonnes décisions sur la base du contexte de navigation (est-ce un appareil mobile? tactile? à petit écran? à faible mémoire? etc) que le site et son webmaster.
Pour moi, c'est donc clairement une mauvaise idée de faire ainsi, car:
• Tu vas te retapper du code qui est déjà dans les navigateurs
• Tu vas foutre le caillon dans tes pages en incluant des javascript de-ci de-là qu'il te faudra ensuite réutiliser correctement (pratiquement, tu vas devoir bannir les tag <img/> au profit de <div/> que tu gères toi-même, niveau évolutivité, c'est mort)
• Tu ne vas rien gagner par rapport à ce que la norme de cache HTTP propose (une date d'expiration sur tes images et hop, le serveur ne sera même pas contacté s'il n'y en a pas besoin)
• Tu vas rater certains concepts comme les URIs (si ton image change, l'URI change, ça peut être sa query string ou autre chose)
• Tu vas avoir des effets colatéraux monstrueux (tu gères le caches d'image, mais le cache de page? Le mode offline du navigateur?)
• Tu vas dépasser la capa maximale du localStorage (environ 10Mo, et alsacreation dit 5Mo)
• Tes images ne seront pas cachées par les proxies (je me demande même si tu ne vas pas sur-solliciter ton serveur en faisant ça, en passant à coté des CDN par exemple).
Donc, heu... non. C'est pas une bonne idée. Si ton soucis est "j'ai changé ma ressource (image, page web, n'importe quoi) donc si elle est en cache les joueurs ne vont pas la voir", change l'URI (puisque la ressource a changée). Soit une URI est dynamique et donc non cachée (ex: page dynamique PHP ou autre), soit l'URI est statique et donc cachée (et on la change quand la ressource change).
Je finis en ajoutant que respecter une norme (comme le cache http) n'est pas là pour casser les pruneaux, mais pour harmoniser le travail des développeurs sur la planète. N'essaie pas de by-passer une norme quand tu n'arrives pas à en faire ce que tu veux: c'est toujours une mauvaise idée (surtout sur le long terme).
[Edité parce que le chocolat, ça calme ]
Le navigateur est toujours le mieux placer pour gérer les choses., parce qu'il n'est pas dans dans le scope du site (le webmaster n'a pas à s'occuper de la maintenance ou de la mise à jour du navigateur), qu'il implémente les nouveaux standards une et une seule fois pour tous les sites (code once), et qu'il sera bien plus apte à prendre les bonnes décisions sur la base du contexte de navigation (est-ce un appareil mobile? tactile? à petit écran? à faible mémoire? etc) que le site et son webmaster.
Pour moi, c'est donc clairement une mauvaise idée de faire ainsi, car:
• Tu vas te retapper du code qui est déjà dans les navigateurs
• Tu vas foutre le caillon dans tes pages en incluant des javascript de-ci de-là qu'il te faudra ensuite réutiliser correctement (pratiquement, tu vas devoir bannir les tag <img/> au profit de <div/> que tu gères toi-même, niveau évolutivité, c'est mort)
• Tu ne vas rien gagner par rapport à ce que la norme de cache HTTP propose (une date d'expiration sur tes images et hop, le serveur ne sera même pas contacté s'il n'y en a pas besoin)
• Tu vas rater certains concepts comme les URIs (si ton image change, l'URI change, ça peut être sa query string ou autre chose)
• Tu vas avoir des effets colatéraux monstrueux (tu gères le caches d'image, mais le cache de page? Le mode offline du navigateur?)
• Tu vas dépasser la capa maximale du localStorage (environ 10Mo, et alsacreation dit 5Mo)
• Tes images ne seront pas cachées par les proxies (je me demande même si tu ne vas pas sur-solliciter ton serveur en faisant ça, en passant à coté des CDN par exemple).
Donc, heu... non. C'est pas une bonne idée. Si ton soucis est "j'ai changé ma ressource (image, page web, n'importe quoi) donc si elle est en cache les joueurs ne vont pas la voir", change l'URI (puisque la ressource a changée). Soit une URI est dynamique et donc non cachée (ex: page dynamique PHP ou autre), soit l'URI est statique et donc cachée (et on la change quand la ressource change).
Je finis en ajoutant que respecter une norme (comme le cache http) n'est pas là pour casser les pruneaux, mais pour harmoniser le travail des développeurs sur la planète. N'essaie pas de by-passer une norme quand tu n'arrives pas à en faire ce que tu veux: c'est toujours une mauvaise idée (surtout sur le long terme).
[Edité parce que le chocolat, ça calme ]