ContexteContrôle de navigateur Caching JavaScript généré
Une application MVC 4 doit inclure JavaScript qui est généré à partir de la base de données. Le fichier généré est relativement volumineux et ne change que de temps en temps (il change tous les 2 à 10 jours).
La réponse acceptée de
Generate javascript file on the fly in asp.net mvc
fournit un bon cadre pour générer le code JavaScript. Toutefois, l'URL de la ressource JavaScript est statique. Si je comprends bien, le navigateur va mettre en cache cette ressource. Cette mise en cache peut être contrôlée par le OutputCacheAttribute
.
Question
Comment puis-je faire le cache du navigateur expire chaque fois que les changements JavaScript générés, semblable à la façon dont les faisceaux de travail? Un SqlDependency
pour le OutputCacheAttribute
n'est pas une option.
Chaîne de requête de version dans le script URL? Par exemple. 'foo.js? v = 1234567'. (Lorsque votre fichier JS change, ajoutez une chaîne de requête différente, ce qui oblige les navigateurs à la demander.) –
Vous pouvez également nommer le fichier javascript en fonction de la date à laquelle il a été généré. –
@ColinDeClue: Le nom de la ressource JavaScript est l'URL du contrôleur, n'est-ce pas? Vous ne savez pas comment donner un nom différent à la ressource JavaScript. –