我有一个 Struts 1 Web 应用程序,我想实现 post/redirect/get 以便在用户按下浏览器上的后退/前进按钮时强制重定向。主要问题是我们要实现 session 超时。当 session 过期时,我们将重定向到“sessionExpired”页面,但如果用户在浏览器上单击返回,我们希望隐藏上一页的信息。我已经添加了删除操作缓存的代码:
response.setHeader("Cache-Control", "private, no-store, no-cache, must-revalidate");
response.setHeader("Pragma", "no-cache");
但这会在浏览器中抛出“缓存中未找到页面”,我们希望运行重定向到页面而不是“无缓存”页面的内容。这就是我尝试实现 PRG 的原因。
最佳答案
Post/Redirect/Get pattern不包括在用户按下后退按钮时强制重定向。它包括在成功的 POST 请求后发送重定向。
在 Struts 1 中,使用 redirect="true"
定义转发,如果您返回此转发,Struts 将发送重定向:
<forward name="success" path="/index.do" redirect="true"/>
关于java - 发布/重定向/获取 Struts 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11755553/