Laravel身份验证与记住我的错误

问题描述

我在记住我参数的情况下使用auth()->attempt()

if (auth()->attempt($credentials,$rememberMe)) {

当记住我为假时,我可以正常登录
但是当记住我是真的时,我得到了一个错误

RuntimeException
Cookie jar has not been set. 

我尝试设置.env 来自SESSION_DRIVER=fileSESSION_DRIVER=cookie

但仍然无法正常工作。

我正在使用Laravel 7.24和PHP 7.4.11

解决方法

我通过将 'driver' => 'session' 放在 guards 中的 config/auth.php 数组下为自己解决了这个问题。但是我在管理面板身份验证中使用了不同的防护,所以可能只是您配置错误。

,

在我的例子中,我使用了一个自定义的 Auth Guard,它扩展了内置的 SessionGuard。我不得不自己设置饼干罐

$this->setCookieJar(app('cookie'));

天啊。