我正在读取一个csv文件并将内容发送到数据库。即使我尝试提及 csrf 令牌,我也会收到令牌不匹配错误。
CSRF 令牌仅放置在处理表单提交的路由上。我认为您可能正在阅读CSV并保存在不需要您提交CSRF令牌的数据库中,我建议您将该路由放置在禁用CSRF令牌的位置,这样就不需要您提交CSRF令牌。你可以通过做这样的事情来做到这一点。
在 App/Http/Midlleware 文件夹中,转到 VerifyCsrfToken.php并包含指向异常的特定路由,如下所示:
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array
*/
protected $except = [
'csvParserRoute',
];
这将仅禁用此路由的 CSRF 令牌要求,并且错误应该消失。
在您的视图中尝试以下代码段:
<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
或
<input type="hidden" name="_token" value="{{ csrf_token() }}">
如果这不起作用,那么请注释此行:
'App'Http'Middleware'VerifyCsrfToken::class
in app/Http/Kernel.php file.
由于此VerifyCsrfToken中间件可以轻松保护您的应用程序免受跨站点请求伪造(CSRF)攻击。不建议对该行进行注释,但出于测试目的,您可以这样做。
看看,这是否有效。