跨标签的会话处理

时间:2012-03-29 03:24:15

标签: session

我想在我的应用程序中触发一个脚本,同时从另一个标签启动相同的链接。

例如:           我在tab1中有www.myweb.com的直播会话,我在tab2中启动了相同的链接www.myweb.com,那时我需要在tab1中停用(签出)会话。

1 个答案:

答案 0 :(得分:1)

您不能指望从服务器端执行此操作。服务器不知道请求来自哪个选项卡/窗口/框架。它不知道是从一个窗口或多个窗口发送请求。就服务器而言,所有请求都是同一会话的一部分,因为浏览器会记住它应该用于该URL空间的cookie。

我已经快速查看了规范,并没有看到任何可以改变此行为的cookie选项。

因此,您需要从客户端执行此操作。作为页面脚本的第一步,您应该尝试删除会话cookie,然后向服务器发出ajax请求。希望会发生什么,服务器会为客户端分配一个新的cookie。当然,我有一种潜在的怀疑,即任何以前打开的同一站点的选项卡/窗口都会在新的会话cookie中获取。

删除Cookie包含在javascript - delete cookie