2010-07-26 4 views
0

J'ai une application flexible environ 2M besoin d'envoyer au navigateur, donc je veux que le navigateur réserve le fichier dans le cache pour toujours, sauf si je mettre à jour la version.Puis-je réserver un objet dans le cache du navigateur?

J'ai défini l'étiquette ETAG et la dernière modification dans l'en-tête de réponse http, mais parfois, lorsque l'utilisateur clique sur l'actualisation, le fichier SWF est toujours rechargé.

Alors, quel en-tête de réponse http puis-je utiliser pour réserver le fichier dans le cache du navigateur pour toujours?

Répondre

1

Étant donné que le fichier est relativement petit (< 5mb), vous pouvez le stocker dans le cache hors ligne. Tant que le fichier ne change pas souvent, le cache hors ligne est un bon endroit pour la vie du fichier.

Départ:

HTML5 offline caching

Vous spécifiez fondamentalement juste une « application manifeste » qui répertorie les fichiers que vous souhaitez conserver autour de la machine de l'utilisateur. Le navigateur télécharge et enregistre les fichiers. Lorsque le navigateur demande à nouveau ces fichiers, ils sont extraits du cache hors connexion à la place.

Espérons que cela aide!

+0

Oh! C'est très cool, mais si l'utilisateur utilise IE 6, comment ils obtiennent cette fonctionnalité? mettre à jour le navigateur? – zhongshu

+0

Malheureusement, c'est à peu près la seule solution. Les utilisateurs IE 6 sont à peu près à l'écart du froid. Peut-être rendre votre application un peu plus lente pour les utilisateurs IE 6 les encouragerait à mettre à niveau;) – mattbasta

+0

J'ai essayé le cache hors ligne et le tester en utilisant firefox 3.6.8. Malheureusement, je ne peux pas le faire fonctionner stable, parfois cela fonctionne, parfois non. le comportement est étrange, alors je l'abandonne. De toute façon, je vais marquer votre réponse. – zhongshu

Questions connexes