laravel 表单重复提交

<form method="post" action="{{ route('card.product.store') }}" accept-charset="utf-8">
<input type="hidden" name="_token" value="{{ csrf_token() }}">

为了防止表单 重复提交
在表单里面 已经存在 _token

但 在网络慢的情形下 ,一直点击提交表单 ,还是重复写到了 数据库里了

目前不用js 做处理,只用laravel 做 防止表单重复提交

有大神指导一下 改如何防止吗 ?

图片描述

阅读 10.3k
2 个回答

csrf_token 是用来防止跨站请求伪造的,没有防止重复提交的功能。

要防止重复提交,可以自己实现,在服务端生一个类似 token 同时放在 session 和表单里,在第一个表单请求中,将 token 从 session 中删除,之后的请求无法从 session 中获取 token 就无效.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题