javascript - 带计时器的用户 session 超时

标签 javascript angular session rxjs

<分区>

目前我正在开发的应用设置为当用户首次与表单交互时,会创建一个过期时间为 15 分钟的 session ,

此外, session 是在服务器端设置的。

15 分钟后,如果用户空闲(未与表单交互),服务器返回 404 并且用户注销。

现在需要的是警告,当用户距离超时还有 20 秒时。

我的想法是轮询端点,获取有关 session 过期时间的信息,并在 20 秒后提醒用户。

我的问题有 2 个,应该多久调用一次端点?

我想至少每20秒一次

而且,我第一次尝试这种方法时,我担心性能问题,如果有很多用户轮询,这会不会造成延迟等?

只需要有这方面经验的人的意见

最佳答案

轮询并不是什么新鲜事物,而且使用得非常频繁。一切都取决于您的服务器及其负载。我建议,因为你确切地知道 session 将持续多长时间,让服务器返回一些像 expiresAt 这样的值,它会告诉你 session 何时超时,基于它你可以显示警告在前端甚至不必为它轮询后端。

关于javascript - 带计时器的用户 session 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55794352/

相关文章:

javascript - 将 mysql 查询行存储在变量中以供以后在另一个 mysql 查询中使用

javascript - 移动网络按钮上的 Js 事件

javascript - 如何删除jquery上附加的div

angular - 启动我的项目时出错(运行 ng serve 之后)

angular - 将 Angular Material 输入集中在单击波形符上

session - 在 cakephp 2 中的行为中读取 session 变量

ruby-on-rails - Rails3/Sessions/Active_Record_Store/Signout --> 如何删除Sessions表中的cookie和记录?

javascript - Cookie 在 Android Webview 的 iframe 中不起作用

angular - 无法解决请求的资源上不存在 'Access-Control-Allow-Origin' header

asp.net - 如何使 ASP.NET session cookie 与 ASP.NET HttpSession 一起过期?