繁体   English   中英

419 页面在 laravel 5.7 中过期

[英]419 page expired in laravel 5.7

我在 Laravel 5.7 多重身份验证中遇到问题419 页面已过期 如果我尝试在同一个浏览器中但在不同的选项卡中登录用户和管理员。 就像在一个选项卡中打开了用户登录屏幕,在第二个选项卡中打开了管理员登录屏幕。 首先,我尝试用普通用户登录,用户登录成功。 但是当我 go 到第二个选项卡并尝试登录管理员用户时,在这种情况下会出现 419 页面过期错误。 但是,如果我在管理员登录尝试之前刷新第二个选项卡意味着管理员登录页面,那么管理员可以正常工作并成功登录而没有任何错误(419 页面已过期)。 你能帮我解决这个问题吗? 我已经在表单中发送@csrf令牌。

在您使用任何角色登录之前,两个页面具有相同的令牌值。 (请查看其他关于 Laravel CSRF 令牌的文章)

在此处输入图像描述

在此处输入图像描述

Laravel 自动为应用程序管理的每个活动用户 session 生成一个 CSRF“令牌”。

因此,如果您登录,将启动新用户 session 并重新生成 CSRF 令牌。

这就是为什么您在刷新之前在管理页面上获得 419 的原因。 如果刷新页面,Laravel 将呈现新的令牌值。

请使用 Inspect function 在您的浏览器上对其进行测试。

我遇到了这个问题,事实证明我已经阻止了所有浏览器 cookies。 确保您的 cookies 未被浏览器设置阻止。

登录后,您可以使用WebSockets刷新令牌。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM