GWT IE不会禁用缓存

时间:2014-06-16 13:45:53

标签: internet-explorer caching gwt

在我的应用程序中,IE缓存整个内容。好像* nocache.js不起作用?当我从一个标签跳到另一个标签时,它会兑现一切。即使我把meta标签用于不缓存行为也是一样的:

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

手动关闭工具的缓存 - &gt;互联网选项 - &gt;在我的案例中,浏览历史记录......不是正确的解决方案。

我的index.html文件如下所示:

            <!DOCTYPE html>
           <html>
           <head>
           <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
           <meta http-equiv="X-UA-Compatible" content="IE=edge" />
          <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
           <META HTTP-EQUIV="Expires" CONTENT="-1">
          <script language="javascript" src="myapp/myapp.nocache.js"></script>
          </head>
          <body>
         <iframe src="javascript:''" id="__gwt_someFrame" tabIndex='-1' style="position: absolute; width: 0; height: 0; border: 0"></iframe>
        </body>
          </html>

感谢您的帮助!

编辑: 谢谢你的帮助,但仍存在问题。方法table.setVisibleRangeAndClearData(table.getVisibleRange(),true);不能在IE下工作。我看到只有无尽的微调器和表格内容没有正确加载。

问题已解决: 当我每次在setVisibleRangeAndClearData(table.getVisibleRange(),true)中更改Range时;每次从服务器加载页面。似乎IE下的RangeChange事件没有正确触发(至少在我的情况下)

2 个答案:

答案 0 :(得分:0)

我读过因为IE中的错误,这些行可能需要更接近html文件的末尾。 http://www.htmlgoodies.com/beyond/reference/article.php/3472881

此外,建议使用-1代替0作为到期值。 HTTP Expires header values "0" and "-1"

让我知道这些对您有用。

答案 1 :(得分:0)

如果在尝试了所有可能的解决方案之后,如果没有任何工作可用,那么请尝试使用适用于所有情况的技巧

如果更改了页面的URL,则浏览器将其视为单独的请求,并从服务器获取页面的新副本。如果客户端没有担心例如UUID的查询字符串或者用于发出新请求的时间(以毫秒为单位),则只需在URL中附加虚拟值。