gpt4 book ai didi

javascript - 如何在用户理想时为 Laravel 中的每个用户设置不同的自动注销时间

转载 作者:行者123 更新时间:2023-11-29 20:48:14 25 4
gpt4 key购买 nike

我在他的个人资料中为每个用户设置了一个以分钟为单位的时间,该用户应在该时间后自动注销。

例子:

用户 1:自动注销时间 => 60 分钟

用户 2:自动注销时间 => 120 分钟

用户 3:自动注销时间 => 150 分钟

因此登录后,用户 1 应在登录 60 分钟后注销,用户 2 应在 120 分钟后注销,用户 3 应在登录 150 分钟后注销。有谁知道如何实现这一点?

我正在考虑为每个登录请求从 session.php 文件更改 session 生命周期,但不知道它是否有效。

提前致谢。

最佳答案

为此,您可以使用 setInterval javascript 函数

    var timeoutSeconds = <?php echo Session::get('timeoutSeconds'); ?>
var _idleSecondsCounter = 0;

window.setInterval(CheckIdleTime, timeoutSeconds);

function CheckIdleTime() {
_idleSecondsCounter++;
var oPanel = document.getElementById("SecondsUntilExpire");
if (oPanel)
oPanel.innerHTML = (IDLE_TIMEOUT - _idleSecondsCounter) + "";
if (_idleSecondsCounter >= IDLE_TIMEOUT) {
document.getElementById('logout-form').submit();
}
}

在登录 Controller 中你可以像这样设置 session

 $userCount = 1;

$timeOutSeconds = 60 * $userCount;

Session::put('timeoutSeconds', $timeOutSeconds);

对于服务器端

在 Laravel 中创建一个后台作业,并在登录方法后进行延迟调度。

Delayed Job Dispatch

关于javascript - 如何在用户理想时为 Laravel 中的每个用户设置不同的自动注销时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53371781/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com