如果我尝试在同一浏览器中但在不同选项卡中登录用户和管理员,则我在laravel 5.7多重身份验证中遇到的问题419页已过期。就像在一个选项卡中打开用户登录屏幕,在第二个选项卡中打开管理员登录屏幕一样,首先,我尝试成功登录普通用户并成功登录,但是当我进入第二个选项卡并尝试登录管理员用户时,则在此情况419页面过期错误出现。但是,如果我在尝试进行管理员登录之前刷新第二个选项卡即管理员登录页面,那么admin可以正常运行并且成功登录且没有任何错误(419页已过期),请您帮我解决此问题?我已经使用表单发送@csrf令牌。
答案 0 :(得分:2)
在以任何角色登录之前,两个页面具有相同的令牌值。 (请查看有关Laravel CSRF令牌的其他文章)
Laravel为应用程序管理的每个活动用户会话自动生成CSRF“令牌”。
因此,如果您登录,则将启动新的用户会话并重新生成CSRF令牌。
这就是为什么刷新前在管理页面上看到419的原因。如果刷新页面,Laravel将呈现新的令牌值。
请使用Inspect功能在浏览器上对其进行测试。
答案 1 :(得分:0)
我遇到了这个问题,结果我阻止了所有浏览器 cookie。确保您的 cookie 未被浏览器设置阻止。
答案 2 :(得分:0)
您可以在登录后使用 WebSockets 刷新令牌。