java - Spring mvc 结果页面和后退浏览器按钮

标签 java spring jakarta-ee spring-mvc

在我的 MVC spring 应用程序中,我使用 post 方法将表单发送到页面,以使用一些参数执行搜索。搜索结果是一个列表,对于每个条目都可以导航到详细信息页面。它工作正常,但是,当用户尝试使用后退浏览器按钮(或 JavaScript)返回结果页面时,我收到“页面过期”错误。刷新页面,它重新执行帖子提交并且工作正常。

为了防止出现此错误,我添加了

response.setHeader("Cache-Control", "no-cache");

到搜索 Controller ,Safari 和 Firefox 一切正常,但当我尝试使用 IE(8 和 9)执行 Web 应用程序时,出现相同的“页面过期”错误。

转到详细信息页面并返回而不会出现任何错误的正确方法是什么?

感谢您的宝贵时间!
Andrea

最佳答案

正确的方法是使用 GET 而不是 POST:搜索是幂等操作,不会对服务器造成任何改变,此类操作应该使用 GET 来完成。

关于java - Spring mvc 结果页面和后退浏览器按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11120989/

相关文章:

java - .project 文件、.settings 文件夹、bin 文件夹在意外导入 IntelliJ Maven 后在 VSCode 中保持自动生成

java - 为将在多个项目之间共享的 Java 库设置日志记录的最佳方法?

java - Spring集成文件 - 在写入文件之前通过入站 channel 适配器读取文件

用于树莓派的 Java EE 服务器(Spring-MVC)

java - 搜索在 vaadin UI 之间传递数据的最佳实践

java - 找不到基本名称的 bundle

java - Spring data Elasticsearch 按字段查找和最新日期查询

java - 删除两个对象之间的关联

java - 在java web应用程序中如何从客户端打印服务器文件

使用 Tomcat 的 Hibernate 与使用 JBoss 的 Hibernate