forms-authentication - 关闭浏览器或者选项卡时表单身份验证杀死 ASP.NET 会话

  显示原文与译文双语对照的内容

我正在使用 ASP.NET 4的表单身份验证。 当用户单击注销链接时,我清除会话并调用 FormsAuthentication.SignOut(),这样用户就不会再次登录到站点。

现在,当浏览器或者标签关闭时,我想终止会话。 在处理 onbeforeunload 事件时,我尝试了这一点,但是在单击任何内部链接之后结束了会话。

我怎么能做到这一点?

时间: 原作者:

身份验证 Cookies 为只 session,这意味着当浏览器关闭时浏览器被浏览器。 也许你没有关闭所有浏览器选项卡,但如果你关闭了所有的身份验证 Cookies,则。

关于关闭选项卡,你不知道用户是否打开了其他标签。

可以能的解决方案可以能是每 10秒回到服务器以保持这里身份验证活动,并设置身份验证结束。 所以如果没有任何信号回来,用户就离开了。 这可以用javascript完成。 另一方面,这不能让用户在几分钟后退出,因这里你可以能需要组合这个逻辑。

原作者:
...