Comme vous l'avez identifié, sans cache ne signifie pas qu'il n'y a jamais de mise en cache, mais plutôt que l'agent utilisateur doit toujours demander au serveur s'il est normal d'utiliser ce qu'il a mis en cache. En revanche, aucun magasin ne dit même de ne pas garder une copie, ce qui signifie qu'il n'y a rien à demander. Si vous connaissez la réponse à « Puis-je réutiliser cela? » est toujours non, vous obtenez un coup de pouce en sautant la validation du cache et la salle d'économie dans le cache pour d'autres données.
Mis à part les performances, il y a une différence de comportement avec histoire du navigateur. HTTP 1.1 La section 13.13 dit que « le temps d'expiration ne s'applique pas aux mécanismes d'historique ». L'en-tête sans cache décrit l'expiration et ne s'applique donc pas aux mécanismes d'historique tels que le bouton arrière. Ainsi, l'utilisateur peut naviguer vers l'arrière vers une page précédente avec sans cache sans que le serveur soit contacté.
L'en-tête sans magasin, en revanche, empêche les données d'être stockées en dehors d'une session, auquel cas il n'est tout simplement pas disponible pour un mécanisme historique. Sans aucun magasin, si l'utilisateur termine sa session en naviguant vers un autre domaine, puis remonte, le seul moyen pour le navigateur de savoir quoi afficher est d'obtenir à nouveau la page initiale du serveur.
Voici comment un problème de chrome sur ce sujet fait la distinction:
Aucun cache, ne signifie pas « ne cache pas cela » (ce ne serait pas de magasin). Le non-cache signifie ne pas l'utiliser pour des charges normales à moins que la ressource ne soit revalidée pour la fraîcheur. Les navigations historiques ne sont pas des charges normales.



