2010-05-04 3 views
0

Nous avons une application Web MVC. Une partie du code est en JavaScript. Lorsque nous déployons des modifications au JavaScript, les modifications ne sont pas répercutées sur le client. Nous devons demander aux clients de faire CTRL + F5 pour obtenir les changements. Existe-t-il un moyen standard de pousser les changements JavaScript du côté client?Déploiement de fichiers JavaScript en cours de déploiement

Répondre

2

Vous pouvez consulter les fichiers avec une version, comme ceci:

<script type="text/javascript" src="myScript.js?v=12345"></script> 

Le nombre après v représente votre numéro de build, donc quand une nouvelle construction pousse, ils saisissent à nouveau les fichiers. Voir la source sur cette page pour voir le même comportement :) Cela vous donne l'avantage de permettre à l'utilisateur de mettre les fichiers en cache le plus longtemps possible (pour toujours), tout en leur permettant d'attraper automatiquement toute mise à jour.

0

vous pouvez essayer cette meta tags

<meta http-equiv="Cache-Control" content="no-cache" /> 
<meta http-equiv="Pragma" content="no-cache" /> 
<meta http-equiv="Expires" content="0" /> 
0

Vous ne dites pas ce langage côté serveur de votre site est. Une bonne astuce du monde Rails est de vérifier le temps « dernière modification » de la fichier, et d'ajouter cela comme un paramètre GET à l'URL.

En PHP, il ressemblerait à ceci: (. Bien sûr, le chemin que vous devez donner à l'appel filemtime devra probablement être absolue)

<script type="text/javascript" 
     src="script.js?time=<?php echo filemtime("script.js");">