我的应用程序禁用通过响应报头中的浏览器缓存,然后使用后重定向消息获取模式,使后退按钮“重新获取”当前页面。
但是在与Firefox 12和IE 8,现在重新测试这个我没有看到结果,我期望(或者说,我曾与IE 6见过)。
在选择后退按钮,我可以看到浏览器试图执行的原始请求(后),而不是重定向请求(GET)。 当我看着萤火虫的网络选项卡上的请求,我看到以下内容:
貌似浏览器处理POST和GET作为相同的请求,因此选择后退按钮重新提交帖子:
我使用JSF,但我认为这是一个浏览器的问题。 有谁知道为什么浏览器不执行重定向页面的得到什么?
它的正常工作。 后退按钮重新执行“POST accountDetails.xhtml”,这是不是在你的第一个屏幕截图之前上市的要求,而是根据第二截图显然(和逻辑)“获取accountDetails.xhtml”。 您在该视图或在一些过滤器做一些检查和重定向到“registrationWelcome.xhtml”相关联的豆很明显。 的“POST accountDetails.xhtml”中的第一屏幕截图是已经被重定向到“reviewInfo.xhtml” 当前的请求。
背面按钮不会重新执行重定向。 这是你自己的代码,做了它。 背面按钮不会也不重新执行POST请求,这是在第二截图证实。