使用“记住我”选项检测用户何时登录(Laravel 5.5)

时间:2019-03-20 16:59:13

标签: laravel laravel-5 laravel-5.5 laravel-events

我想在用户使用“记住我”选项(通过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'
];

这仅检测“常规”登录(通过登录表单)。但是它不会检测“通过记住”登录。例如:

  1. 我选中“记住我”选项并登录;
  2. 我关闭浏览器;
  3. 我打开浏览器并访问该站点-我已经登录;

...但是没有被发现。

我正在使用Laravel 5.5 (LTS)。会话配置是默认配置(Laravel的全新安装随附),默认配置是:SESSION_DRIVER=database

Laravel(5.5)是否存在某些问题/错误?还是我做错了(如果是,那么检测“通过记住我”登录的正确方法是什么?)?

0 个答案:

没有答案
相关问题