Я хочу обнаруживать (отслеживать), когда пользователь входит в систему, используя опцию «запомнить меня» (через cookie / сессию). У меня есть app/Listeners/UserEventSubscriber.php
:
<?php
namespace App\Listeners;
class UserEventSubscriber
{
public function onUserLogin($event)
{
\Log::info('logged-in'); // NEVER WORKS IF IT WAS "VIA REMEMBER"... BUT WORKS WHEN USER LOGS-IN REGULARLY (USING LOGIN-FORM)
}
public function subscribe($events)
{
$events->listen(
'Illuminate\Auth\Events\Login',
'App\Listeners\UserEventSubscriber@onUserLogin'
);
}
}
... и, конечно, это было зарегистрировано в app/Providers/EventServiceProvider.php
:
protected $subscribe = [
'App\Listeners\UserEventSubscriber'
];
При этом обнаруживаются только «обычные» входы (через форму входа). Но он не обнаруживает логин «через запоминание». Например:
- Я проверяю опцию "запомнить меня" и захожу;
- Я закрываю браузер;
- Я открываю браузер и захожу на сайт - и я захожу;
... но это не было обнаружено.
Я использую Laravel 5.5 (LTS). Конфигурация сеанса является конфигурацией по умолчанию (которая поставляется с новой установкой Laravel), кроме: SESSION_DRIVER=database
.
Это какая-то проблема / ошибка в Laravel (5.5)? Или, может быть, я что-то делаю не так (если так, какой будет правильный способ обнаружения входов в систему «через запомнить меня»?)?