如何发布浏览器会话

时间:2009-07-27 11:37:47

标签: jquery session

我有一个网络聊天应用程序,我们正在使用jQuery。当用户空闲或者在15分钟内没有点击浏览器时,它应该自动销毁该特定用户的会话并将其重定向到登录页面。我该怎么做?

5 个答案:

答案 0 :(得分:2)

您使用的是哪种语言服务器?

会话应该使用服务器端的任何语言销毁......

但是,让我举一个可能的应用流程示例。

  • 用户登录并创建具有特定过期时间的会话(在php中默认为20分钟)
  • 对于每个请求,您都可以检查会话数据或某个标志是否仍然存在
  • 如果没有,请重定向到登录页面

如下面的答案中所述,是的,你可以销毁cookie或会话客户端,但我不会依赖它,javascript并不总是可用。您必须将其留给服务器以销毁会话并清理所有数据。你必须弄清楚会话cookie如何看起来像是在学习你使用的技术......

但要明确的是,请提供有关所用技术的更多信息,然后我可以给你一个正确的答案。

答案 1 :(得分:1)

你需要销毁cookie - there is plugin

例如,在java中,大多数时候它的cookie名为“JSESSIONID”

您需要查看网站制作的Cookie并使用会话信息终止该Cookie。

答案 2 :(得分:0)

当鼠标移动15分钟时,您可以使用AJAX指向重定向到登录页面的注销页面

答案 3 :(得分:0)

您的服务器应该跟踪会话生命周期,而不是浏览器。所有浏览器都有一个引用会话ID(或类似内容)的cookie。

是的,如果您要销毁cookie中的cookie或会话ID,则用户下次联系服务器时似乎会被注销。但是,根据会话管理的浏览器,这是获得不一致结果的好方法。

会话存在于您的服务器上,客户端仅引用它。您必须在服务器上对其进行管理才能保证可靠性。例如,在会话中保存“lastContactTimestamp”的时间戳。当客户端发出请求时,检查当前时间戳是否超过“lastContactTimestamp”的15分钟。如果是,则重定向客户端以重新登录。如果不是,请将“lastContactTimestamp”更新为当前时间戳,然后提供客户端请求。

答案 4 :(得分:0)

使用元刷新重定向,这将在900秒内自动将浏览器重定向到somelogOutUrl。这假设您将在那段时间刷新页面。如果您的applciation主要使用ajax调用新内容,并且很少有整页刷新,那么您将需要另一个选项。

<meta http-equiv="refresh" content="900;url=somelogOutUrl">