2

我在这里不知所措......我正在使用带有喷射流惯性堆栈的 Laravel 8。我已经设置了事件监听EventServiceProvider器来记录各种身份验证事件,但这些事件似乎没有按预期触发。Login两者Logout都按预期工作,但我无法弄清楚 and 背后的Attempting逻辑FailedAttempting只有当我成功登录时才会触发。如果我传递了无效的电子邮件/密码,它永远不会触发。而且我似乎无法弄清楚什么Failed时候会着火。我想要完成的只是记录登录我系统的尝试,即使他们提供的凭据无效。

这是我的 EventServiceProvider。所有侦听器都非常简单,只需一行即可在handle()方法中记录一条消息。

    protected $listen = [
        \Illuminate\Auth\Events\Attempting::class => [
            \App\Listeners\Auth\LogAttemptingLogin::class
        ],
        \Illuminate\Auth\Events\Login::class => [
            \App\Listeners\Auth\LogSuccessfulLogin::class,
        ],
        \Illuminate\Auth\Events\Logout::class => [
            \App\Listeners\Auth\LogSuccessfulLogout::class,
        ],
        \Illuminate\Auth\Events\Failed::class => [
            \App\Listeners\Auth\LogFailedLogin::class,
        ]
];
4

1 回答 1

2

我在使用完全相同的堆栈时遇到了同样的问题。感觉 LogFailedLogin 没有触发是一个错误或什么的。

我打开了一个问题,因为我有预感它与 Fortify 有关:https ://github.com/laravel/fortify/issues/145 。

编辑:在撰写本文时,这是一个已确认的错误。

于 2020-11-12T07:00:55.850 回答