【发布时间】:2011-06-16 16:17:33
【问题描述】:
我使用 GWT 编写了应用程序。它非常适合客户。但是当我在我的应用程序中更改某些内容,重新编译然后部署到服务器和客户端访问我的应用程序时,他的浏览器不会选择新版本的应用程序,而是使用以前缓存的版本。这会触发 RPC 错误和其他问题。
如何强制客户端浏览器在访问我的页面时获取应用程序的新版本,如果缓存版本与服务器上的版本匹配,则使用缓存版本。
【问题讨论】:
标签: caching gwt browser-cache
我使用 GWT 编写了应用程序。它非常适合客户。但是当我在我的应用程序中更改某些内容,重新编译然后部署到服务器和客户端访问我的应用程序时,他的浏览器不会选择新版本的应用程序,而是使用以前缓存的版本。这会触发 RPC 错误和其他问题。
如何强制客户端浏览器在访问我的页面时获取应用程序的新版本,如果缓存版本与服务器上的版本匹配,则使用缓存版本。
【问题讨论】:
标签: caching gwt browser-cache
确保您的"*.nocache.*" 文件和起始页(通常为“index.html”)提供了正确的HTTP 缓存标头。有关此(有些困难)主题的讨论,请参阅 Ideal HTTP cache control headers for different types of resources。基本上,你可能想要设置
Cache-Control: no-cache
这些文件。 (顺便说一句,这仅在文件发生更改时强制重新下载!)
如何进行此配置,取决于您的 Web 服务器(对于 Apache Httpd,您可以使用 this guide)。
或者 - 如果您使用 JavaEE 服务器(Tomcat、Jetty 等)来提供这些文件 - 您可以使用 Servlet 过滤器。也许你想用我的例子How to set Expires HTTP header on a single JS file in Apache Tomcat?
【讨论】:
这个话题可以帮助你清除缓存:how to clear cache in gwt?
【讨论】: