浏览器如何监听用户几分钟无任何操作行为时退出登录(非定时器方案)

发布于 2022-09-12 22:32:28 字数 297 浏览 15 评论 0

题目描述

浏览器如何监听用户几分钟无任何操作行为时退出登录,类似直播网站用户长时间无操作时关闭直播视频。

自己的思路

我一开始想到的就是使用定时器,监听鼠标和键盘的操作事件,记录最后一次操作的时间和上一次操作的时间做对比,如果超过了时间限制就使cookie过期。
但是我似乎看到过web直接提供了对应的API,之前在mdn查看web apis文档时看到过,检测用户是否无任何操作API。是否存在这样的api?还是我记错了。

你期待的结果是什么?

使用非定时器的方案实现监听用户一段时间无操作后退出登录。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

治碍 2022-09-19 22:32:28

这个可以没有本地定时器,但一定有定时器,比如在服务器端处理计时,本地端只周期性去检测是否还需要登录。

东走西顾 2022-09-19 22:32:28

你记错了吧……

半寸时光 2022-09-19 22:32:28

随便搜搜就 有一大堆,你自己筛选下呗

https://www.cnblogs.com/Maryd...
https://blog.csdn.net/tangcc1...

薄凉少年不暖心 2022-09-19 22:32:28
  1. 监听键盘事件
  2. 监听鼠标移动事件
  3. 利用rxjs的防抖功能,在一定时间内未接收到新值时则触发logout方法。
 this.xxxxSubject.asObservable().pipe(debounceTime(10 * 60 * 1000))
      .subscribe(() => {
        if (用户已登录) {
          注销
        }
      });

  监听事件(): void {
    this.xxxSubject.next();
  }

https://segmentfault.com/a/1190000022435877

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文