laravel 5.7.15 419 抱歉,您的会话已过期。请刷新并重试

Posted

技术标签:

【中文标题】laravel 5.7.15 419 抱歉,您的会话已过期。请刷新并重试【英文标题】:laravel 5.7.15 419 Sorry, your session has expired. Please refresh and try again 【发布时间】:2019-05-05 15:50:40 【问题描述】:

您好,我正在使用 laravel 5.7.15 我面临问题

<form method="post" action="my_post_Action" class="login100-form validate-form">
<input type="hidden" name="_token" value="B6et9cJOP5wNKodCPgCbAafDjpA5EMcRaaJhEJ9F">
<span class="login100-form-title">
Admin Login
</span>
<div class="wrap-input100 validate-input" data-validate="Valid email is required: ex@abc.xyz">
<input class="input100" type="text" name="email" placeholder="Email">
<span class="focus-input100"></span>
<span class="symbol-input100">
<i class="fa fa-envelope" aria-hidden="true"></i>
</span>
</div>
<div class="wrap-input100 validate-input" data-validate="Password is required">
<input class="input100" type="password" name="password" placeholder="Password">
<span class="focus-input100"></span>
<span class="symbol-input100">
<i class="fa fa-lock" aria-hidden="true"></i>
</span>
</div>
<div class="container-login100-form-btn">
<button class="login100-form-btn">
Login
</button>
</div>
</form>

这是我的代码 我不知道是什么错误 如果我评论 csrf 验证表 kernal.php 则这是我的登录路径 任何帮助提前谢谢..

【问题讨论】:

清除您的 composer catch 和 php artisan config:clear 和 php artisan config:catch 然后再次登录并尝试 实际上我在 cpanel 服务器上,我必须手动上传文件,我已经在本地完成并再次上传所有文件并遇到同样的问题。 Route::get('/clear-cache', function() $exitCode = Artisan::call('cache:clear'); // 返回你想要的 );跨度> 感谢这段有用的代码,但不幸的是它不起作用:( 你的php版本是什么 【参考方案1】:

我遇到了同样的问题,我通过在表单中​​添加 @csrf 解决了我的问题

点赞:

<form method="post" action=".....">
@csrf
.....
</form>

【讨论】:

【参考方案2】:

确保您在表单中添加了 @csrf csrf_field()

<form method="post" action=" url('your route here') ">
  @csrf
 </form>

【讨论】:

【参考方案3】:

以防万一,当没有其他解决方案有效时,您可以在此处将您的页面名称添加到页面的白名单中不会通过 CSRF 进行检查的页面

不用说,必须记住,您将删除此安全检查,请根据您自己的标准明智地使用它

你可以在这里找到它:app/Http/Middleware/VerifyCsrfToken.php

  /**
 * The URIs that should be excluded from CSRF verification.
 *
 * @var array
 */
protected $except = [
    '/nameofpagetobeexcluded','/anotherpagetobeexcludedfromthischeck'

];

【讨论】:

【参考方案4】:

每当您在应用程序中定义 html 表单时,您应该在表单中包含一个隐藏的 CSRF 令牌字段,以便 CSRF 保护中间件可以验证请求。 在标记后尝试@csrf

【讨论】:

【参考方案5】:

对于./storage/framework/sessions,您还必须将chmod 设置为757。 它对我有帮助,现在工作正常,没有错误419

【讨论】:

【参考方案6】:

我没有真正得到我尝试过所有解决方案的问题 但我必须安装新的 Laravel 并且必须手动移动我所有的控制器、路由和视图以解决这个问题 真的感谢你们所有人 :)

【讨论】:

有史以来最糟糕的解决方案 根本没有解决办法?! 其实需要重新安装laravel然后我替换app路由并查看文件夹【参考方案7】:

    确保您用力刷新页面;同时清除缓存:

    php 工匠缓存:清除

    确保您对日志文件夹具有正确的权限:

    chmod -R 755 存储/日志

    确保为您的应用程序生成密钥:

    php 工匠密钥:生成

    检查在使用 post 和 CSRF 时,您是否有 web 中间件组包裹您的路由;

我用那个解决了我的问题!希望能帮助到你! :D

【讨论】:

【参考方案8】:

只有一次?只需删除文件夹 storage/framework/cache/data

【讨论】:

你能确认你在你的路线上使用post吗【参考方案9】:

尝试将@csrf 放在&lt;form&gt; 标签的底部

【讨论】:

它在两天前工作正常我只是更新作曲家然后发生这种情况:( 你找到答案了吗:我觉得你的问题看起来一样:***.com/questions/52583886/… 是的,我已经看到并实施所有仍然存在问题的答案 先尝试composer dump-autoload 其实我在cpanel服务器上:(

以上是关于laravel 5.7.15 419 抱歉,您的会话已过期。请刷新并重试的主要内容,如果未能解决你的问题,请参考以下文章

“抱歉,我们目前无法完成您的购买” - PayPal Laravel 集成

laravel 5.8.7 页面过期(419)

Laravel 419 未知状态

Laravel 419 错误-VerifyCsrfToken 问题

Laravel 页面已过期 419

从 5.4 升级后的 Laravel 419 发布请求