GWT与Spring安全缓存问题在GWT页面



我觉得这有点奇怪,我还没有找到任何关于有类似问题的人的信息。无论如何,我已经将Spring安全性与GWT集成在一起,并且它似乎可以正常工作…在很大程度上。我在IE和Chrome中有一个主html页面的缓存问题。

我已经将Spring Security登录分离到一个login.jsp,它将重定向到我的Application.html页面(GWT页面),当我第一次启动应用程序并访问该页面时,它似乎在所有浏览器中都能正常工作。我被引导到登录页面,因为我没有经过身份验证。

问题是,在Chrome或IE中,如果我在成功登录后关闭浏览器,并直接浏览回该Application.html URL,它仍然呈现,好像我已经过身份验证。我查看控制台中的spring安全日志语句,确认我没有经过身份验证。当我按f5刷新页面时,我被定向回login.jsp url。

我认为这是一些缓存问题,因为当我关闭浏览器并重新打开html页面时,即使它呈现像我登录,控制台日志语句说我不是,如果我在调试模式下运行,Application.java中的OnModuleLoad()永远不会被击中。

最后,这似乎在firefox中正常工作…如果有人看到这个问题或有任何建议,我需要寻找解决方案,我将非常感谢的帮助。

我在一个web应用程序上遇到了类似的问题。我试图通过向页面添加以下标签来阻止浏览器缓存页面:

<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="0">
不幸的是,这不足以阻止所有浏览器的缓存。最后,我将页面转换为JSP页面,并将这些语句添加到顶部:
<%
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", 0);
%>

自从我做了更改后,我一直无法在Firefox, Chrome或Safari中重现这个问题。

最新更新