2

让我们考虑如下场景:

  1. Symfony2 为实体提供了移除表单
  2. 用户选择删除按钮
  3. Symfony2 控制器将删除实体并将用户重定向到确认页面
  4. 如果用户选择浏览器后退按钮,他/她将再次看到记录和删除表格
  5. 选择删除按钮将引发异常,因为它已被删除

避免返回按钮和重新提交的最佳方法是什么?

此问题的控制器与此处相同。

4

1 回答 1

4

所有数据更改请求都应该使用POST方法来完成 - 或PUTPOST或者DELETE如果您正在以 RESTful 方式进行。在这样的请求之后,重定向到一个GET页面。如果用户按下后退按钮,浏览器将显示一条警告,指出应再次发送请求,并且可能导致不需要的结果。如果用户坚持重新发送请求,她应该会得到一个404错误页面,因为她正在尝试对不再存在的东西做一些事情。

于 2012-07-18T18:33:21.617 回答