下午好,我正在开发一个项目,它已经在gitlab的kubernetes,它已经在生产了。但是每次我修改和更新url时,用户都需要ctrl+f5来显示修改,有人知道每次在kubernetes中上传新版本时,甚至每次刷新页面时,都可以执行缓存清理吗?
fcg9iug31#
使用像grunt这样的任务运行程序来压缩、合并和版本化js文件。这样,您所做的更改将始终使用新文件名,并且不会出现缓存问题(浏览器可能会缓存index.html,但这可以通过下面的元标记来避免)每当我为生产构建angularjs项目时,我首先运行 npm version patch 然后编译。javascript文件得到整合和缩小。在这个过程中,我使用npm版本附加文件名,并更新index.html文件。为此,我将静态javascript文件(其中包含很少更改的组合小型库)和不断更新的应用程序javascript分离出来。最后,我的应用程序导入了这两个文件,因为静态js很少改变,所以它会被缓存,这很好。另外,将这些破坏缓存的元标记放在index.html中
npm version patch
<meta http-equiv="cache-control" content="max-age=0" /> <meta http-equiv="Cache-Control" content="no-cache" /> <meta http-equiv="Expires" content="0" /> <meta http-equiv="Expires" content="Tue, 01 Jan 1980 1:00:00 GMT" /> <meta http-equiv="Pragma" content="no-cache" />
1条答案
按热度按时间fcg9iug31#
使用像grunt这样的任务运行程序来压缩、合并和版本化js文件。这样,您所做的更改将始终使用新文件名,并且不会出现缓存问题(浏览器可能会缓存index.html,但这可以通过下面的元标记来避免)
每当我为生产构建angularjs项目时,我首先运行
npm version patch
然后编译。javascript文件得到整合和缩小。在这个过程中,我使用npm版本附加文件名,并更新index.html文件。为此,我将静态javascript文件(其中包含很少更改的组合小型库)和不断更新的应用程序javascript分离出来。最后,我的应用程序导入了这两个文件,因为静态js很少改变,所以它会被缓存,这很好。
另外,将这些破坏缓存的元标记放在index.html中