Php &引用;OnSessionExpired“;拉维等效

Php &引用;OnSessionExpired“;拉维等效,php,laravel,session,laravel-5,Php,Laravel,Session,Laravel 5,我来自.NET背景,一直在寻找类似于OnSessionExpired或类似事件的事件。我希望除了用户手动注销时的事件之外,还存在此事件,或者在服务器端会话过期和用户手动注销时都运行此事件。不管是哪一个 当用户的会话在Laravel中过期时,是否存在我们可以挂接的事件 谢谢 Laravel有自己的。你可以听听这些。有关更多详细信息,请参阅 此外,这些事件还为您提供了可以使用的有效负载。例如,注销事件确实为您提供了有关注销用户及其从中注销的防护装置的有效负载。Laravel拥有自己的防护装置。你可以

我来自.NET背景,一直在寻找类似于
OnSessionExpired
或类似事件的事件。我希望除了用户手动注销时的事件之外,还存在此事件,或者在服务器端会话过期和用户手动注销时都运行此事件。不管是哪一个

当用户的会话在Laravel中过期时,是否存在我们可以挂接的事件

谢谢

Laravel有自己的。你可以听听这些。有关更多详细信息,请参阅

此外,这些事件还为您提供了可以使用的有效负载。例如,注销事件确实为您提供了有关注销用户及其从中注销的防护装置的有效负载。

Laravel拥有自己的防护装置。你可以听听这些。有关更多详细信息,请参阅


此外,这些事件还为您提供了可以使用的有效负载。例如,注销事件确实为您提供了有关注销用户及其从中注销的卫兵的有效负载。

对于问题的第一部分,您可以在用户如Mihir所述注销时收听
照亮\Auth\Events\logout
事件

至于检测会话何时过期,没有任何内置功能,因为Laravel支持许多不同的会话驱动程序,其中一些驱动程序(如Memcached和Redis)会自动过期。对于不自过期的驱动程序(如文件驱动程序),驱动程序上有一个
gc()
方法,用于垃圾收集过期的会话文件,但不会发出任何事件


如果您想要会话到期事件,那么您必须自己构建该系统。我建议创建web中间件来跟踪活动用户,并创建一个计划作业/命令来循环和修剪过期的用户,为找到的每个用户触发一个事件。

对于问题的第一部分,当用户如Mihir所述注销时,您可以听一听
light\Auth\Events\Logout
事件

至于检测会话何时过期,没有任何内置功能,因为Laravel支持许多不同的会话驱动程序,其中一些驱动程序(如Memcached和Redis)会自动过期。对于不自过期的驱动程序(如文件驱动程序),驱动程序上有一个
gc()
方法,用于垃圾收集过期的会话文件,但不会发出任何事件


如果您想要会话到期事件,那么您必须自己构建该系统。我建议创建web中间件来跟踪活动用户,并创建一个计划作业/命令来循环和修剪过期的用户,为找到的每个用户触发一个事件。

因此,没有办法创建一个类似于
注销功能的事件,就在会话过期时触发?我已经在跟踪活动会话。我能想到的最干净、最优雅的方法就是在会话到期时触发事件。因此,如果有任何方法可以在会话到期时创建和触发事件,请帮助我执行该操作。正如我在回答中所说,框架中没有任何东西可以告诉您会话何时过期并被删除,但是您可以编写自己的cron任务来完成它。好的,继续cron作业/调度路线-我知道Laravel有,但我对它非常陌生。假设我有一个
会话
表,我想每分钟循环一次,以验证生产环境中的所有内容是否符合犹太标准。我该怎么办?是否禁止在生产中调度
php artisan
命令?或者我应该编写一个
闭包调用
,而不是
php artisan
命令吗?谢谢这是一个非常广泛的问题,需要很长的时间。我建议您阅读几次您链接的文档以及您可以找到的任何指南,如果遇到任何具体问题,请提出新问题。但是不,计划命令不是禁忌-这就是为什么有多个页面记录如何创建它们。因此,无法创建类似于
注销
功能的事件,仅当会话过期时?我已经在跟踪活动会话。我能想到的最干净、最优雅的方法就是在会话到期时触发事件。因此,如果有任何方法可以在会话到期时创建和触发事件,请帮助我执行该操作。正如我在回答中所说,框架中没有任何东西可以告诉您会话何时过期并被删除,但是您可以编写自己的cron任务来完成它。好的,继续cron作业/调度路线-我知道Laravel有,但我对它非常陌生。假设我有一个
会话
表,我想每分钟循环一次,以验证生产环境中的所有内容是否符合犹太标准。我该怎么办?是否禁止在生产中调度
php artisan
命令?或者我应该编写一个
闭包调用
,而不是
php artisan
命令吗?谢谢这是一个非常广泛的问题,需要很长的时间。我建议您阅读几次您链接的文档以及您可以找到的任何指南,如果遇到任何具体问题,请提出新问题。但不,计划命令并不是禁忌——这就是为什么有多个页面记录如何创建它们的原因。