Laravel随机验证CSRF令牌

问题描述 投票:0回答:1

我目前在Laravel 5.3中构建了一个Web应用程序。

我使用带有SQL Server的Laravel Valet在我的MacBook Pro上本地运行它。所有预期功能都有效。

然后我将它上传到我在DigitalOcean上的Ubuntu Web服务器上,并且自从我开始这个项目(8个月前)以来没有任何问题就把它放到了那里。

对于特定形式的POST请求,我收到令牌不匹配错误:

TokenMismatchException in VerifyCsrfToken.php line 68

用户已登录,并且应用程序上的其他POST请求有效。表单在表单内部具有正确的CSRF令牌,并且令牌存储在页面头部的元标记()下。

我本地没有这个问题,他们都有相同的数据库架构和内容。

我无法理解为什么这个问题只会发生在Web服务器上。

任何帮助深表感谢。

php laravel laravel-5 laravel-5.3
1个回答
1
投票

基于我的假设:确保将$this->middleware('auth');添加到控制器的构造函数中,该构造函数处理该post请求。

也可以尝试使用下面的csrf标记字段选项之一:

<input type="hidden" name="_token" value="{{ csrf_token() }}">

要么:

{{ csrf_field() }}
© www.soinside.com 2019 - 2024. All rights reserved.