130 votes

Comment éviter le cache du navigateur sur le site Angular 2?

Nous travaillons actuellement sur un nouveau projet avec des mises à jour régulières qui est utilisé quotidiennement par l'un de nos clients. Ce projet est développé en utilisant Angular 2 et nous rencontrons des problèmes de cache, c'est-à-dire que nos clients ne voient pas les derniers changements sur leurs machines.

Principalement, les fichiers html/css pour les fichiers js semblent être mis à jour correctement sans causer trop de problèmes.

3 votes

Très bonne question. J'ai le même problème. Quel est le meilleur moyen de résoudre ce problème ? Est-ce possible avec gulp ou tout outil similaire pour publier une application Angular 2 ?

2 votes

@jump4791 La meilleure façon est d'utiliser webpack et de compiler le projet en utilisant les paramètres de production. Je suis actuellement en train d'utiliser ce dépôt, il suffit de suivre les étapes et tout devrait bien se passer : github.com/AngularClass/angular2-webpack-starter

0 votes

Je rencontre également le même problème.

3voto

ranieribt Points 157

Vous pouvez contrôler le cache client avec les en-têtes HTTP. Cela fonctionne dans n'importe quel framework web.

Vous pouvez définir les directives de ces en-têtes pour avoir un contrôle granulaire sur la manière et le moment d'activer|désactiver le cache :

  • Cache-Control
  • Surrogate-Control
  • Expires
  • ETag (très bon)
  • Pragma (si vous souhaitez prendre en charge les anciens navigateurs)

Un bon caching est bon, mais très complexe, dans tous les systèmes informatiques. Consultez https://helmetjs.github.io/docs/nocache/#the-headers pour plus d'informations.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X