让我们来考虑一个场景象下面这样:
- Symfony2中提供了一种去除形式为实体
- 用户选择删除按钮
- Symfony2的控制器将删除实体,将用户重定向到确认页面
- 如果用户选择浏览器的后退按钮,他/她将再次看到记录和删除表单
- 因为它已经被删除选择删除按钮将抛出一个异常
什么是避免后退按钮并重新提交内容的最佳方式是什么?
对于这个问题的控制器是一样的在这里 。
让我们来考虑一个场景象下面这样:
什么是避免后退按钮并重新提交内容的最佳方式是什么?
对于这个问题的控制器是一样的在这里 。
所有的数据改变的请求应该用做POST
方法-或PUT
, POST
或DELETE
,如果你在使用RESTful方式做这件事。 这样的请求后,重定向到一个GET
页面。 如果用户将推动后退按钮,浏览器将显示一条警告说,应该将请求再次发送,它可能会导致不想要的结果。 如果用户坚持重发请求,她应该得到一个404
,因为她试图做的东西的东西,已经不存在了错误页面。