java做的后台管理系统,前端vue做的,如何控制,让用户10分钟无操作就离线?

如何控制呀?前端sessionstore控制?


回答:

jwt
token设置有效时间
当有效时间过了就拦截,也就是离线


回答:

这个都是后端做,控制会话过期时间,
超过时间的自然无效了,也就离线。

前端倒计时虽然也可以控制,但不是好方法,因不能保证用户能留在前端页面。


回答:

简单的方法,前端保存下登录时间,每次请求后端接口都检查下这个时间,没过期就更新一下时间,过期了就删除登录信息,跳转到登录界面.
检查时间的操作和请求方法封装到一起


回答:

这是我采用的方案,由前端控制的,还须调用一下后端的注销接口,参考一下吧

// 最后操作时间

window.lastOperateTime = dayjs();

function updateLastOperateTime() {

window.lastOperateTime = dayjs();

}

// 10分钟定时器

let myInterval = window.setInterval(function () {

let difference = dayjs().diff(window.lastOperateTime, 'minute');

console.info("myInterval difference----->", difference);

// 是否超出固定时间120分钟(2小时)未操作

if (difference > 120) {

// 关闭定时器,刷新主页面

window.clearInterval(myInterval);

window.location.href = '../login.html?random=' + Math.random();

}

}, 10 * 60 * 1000);

// 更新键盘或鼠标最后操作时间

$(document).keydown(function (e) {

updateLastOperateTime();

});

$(document).mousemove(function (e) {

updateLastOperateTime();

});

以上是 java做的后台管理系统,前端vue做的,如何控制,让用户10分钟无操作就离线? 的全部内容, 来源链接: utcz.com/p/944426.html

回到顶部