javascript - 在 javascript 或服务器端处理 session 超时

标签 javascript php session settimeout session-timeout

我有一个网站,目前我正在使用 Javascript 的客户端上处理超时,因此我不会发出请求,我会注销用户,但我看到人们在 SO 上建议相同的方法,并且我假设用户打开了 2 个选项卡,就会发现其中存在很大的失误。

Tab 1:
www.MYSITE.com/welcome.php

Tab 2: 
www.MYSITE.com/edit_profile.php

现在,如果用户在选项卡 2 上并且正在编辑配置文件,则选项卡 1 处于空闲状态,这意味着用户将被注销/显示警告(您处理空闲时间的方式)。

所以这似乎不一致,在我看来它应该在服务器端,我的方法正确吗?

最佳答案

一种可能是,

对于 Ajax,每当您向服务器发送任何请求时,您都可以在服务器上使用 isset($_SESSION['variable']) 检查 session 是否过期,并发送响应 SESSION_TIMEOUT 然后在 ajax 回调中检查此响应。

如果找到,则向用户显示消息“ session 已过期!” & 重定向到初始页面(可能是登录页面)。

关于javascript - 在 javascript 或服务器端处理 session 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26082224/

相关文章:

c# - HttpWebRequest 和 Tomcat

php session_write_close() 在脚本执行完成之前不提交?

android - session Android 应用程序,如网络应用程序

javascript - 如何在 curl php 中发送推送通知时获取注册 ID

php - 如何添加垂直菜单PHP

javascript - 出现错误时重新运行函数并传递结果

javascript - 使用带循环的 AJAX 更新表

php - 未找到基表或 View : 1146 Table 'Vojodb.users' doesn't exist

javascript - 分屏中的站点容器

javascript - 结合点击和 dbclick