VerifyCsrfToken.php 行中的 TokenMismatchException

TokenMismatchException in VerifyCsrfToken.php line

我正在使用 laravel 5.1 它在本地主机上运行但在服务器上运行时出现错误

TokenMismatchException in VerifyCsrfToken.php line 53:

这是我的代码link

https://www.itextpad.com/XMkKhqCnof

帮帮我

确保您的 admin.blade.php 布局的头部有此元标记:

<!-- CSRF Token -->
<meta name="csrf-token" content="{{ csrf_token() }}">

希望对您有所帮助。

您必须将(通常是隐藏的)CSRF 令牌字段作为表单的一部分,因此只需添加

{{ csrf_field(); }} 

在您的表单中的某个位置,Laravel 将完成剩下的工作。

https://laravel.com/docs/5.5/csrf

由于您使用的是表单生成器,请将其从您的表单中删除。 Laravel 当您执行 Form::open()

时,表单生成器会自动向您的表单添加一个隐藏的令牌字段
 <input type="hidden" name="_token" value="{{ csrf_token() }}">

如果你想在 javascript 中使用 CSRF 令牌,我们主要推荐的是放置元数据并从元数据中调用,这将与 laravel 5.3 及更高版本一起出现。

<meta name="csrf-token" content="{{ csrf_token() }}">

如何使用?

如果你使用的是 5.3 或更高版本,你可以只使用 token 来获得 csrf_token 这不是魔法你可以看到 laravel 已经在 [=31= 中声明了它] 使用此代码

let token = document.head.querySelector('meta[name="csrf-token"]');

如果您低于版本。 5.3也可以使用上面的代码获取csrf token

也可能问题不是来自 csrf 令牌,我怀疑是你的 javascript 来自数据不起作用尝试使用 new FormData() 而不是希望有帮助。

更多关于表单数据可以看 here and here