避免在Play Framework 2.0中重新提交表单

by0*_*by0 3 javascript playframework playframework-2.0

我提交了一个基本的POST表单.每次提交表单时,都会更新数据库.如果有人试图刷新页面,您会收到"确认表单重新提交?".反正有没有避免这个?我知道这可以通过PHP实现,但这不是一个选项

谢谢!

Sam*_*amo 7

接受表单POST的操作应该将数据提交到数据库,然后重定向到另一个操作.这样,当用户点击刷新时,他们只会读取数据而不是写入数据.

这是一个例子:

  public Result terminate(Long depositKey) throws Exception {
    depositsService.cancelScheduledDeposit(getCurrentUser().memberKey(), depositKey);
    return redirect(routes.ControllerFactory.deposits.terminateConfirmation(depositKey));
  }
Run Code Online (Sandbox Code Playgroud)

  • 这称为发布/重定向/获取:http://en.wikipedia.org/wiki/Post/Redirect/Get (2认同)