【问题标题】:Logout Opened pages in mvc注销 mvc 中打开的页面
【发布时间】:2017-02-08 12:06:31
【问题描述】:

我有一个 mvc web 应用程序,当用户在不同的选项卡中打开页面并单击特定页面中的注销按钮时,它将注销所有打开的相关页面。我尝试注销并重定向到登录,但仅在该页面上。

当用户单击特定页面中的注销按钮时,我如何注销其他选项卡中所有打开的页面。

谢谢。

【问题讨论】:

  • 您的注销机制是什么?会话过期?或清除创建的cookies?在帖子中更新
  • 我设置了一个空闲时间来注销。它将清除会话和 cookie。
  • 您可以尝试使用 ajax 或 WebSocket 进行轮询,例如使用SignalR实时更新认证状态。但 IMO 的工作量和开销太大。
  • 您打算使用您的 C# 控制器代码或其他任何东西来制作此注销机制?
  • 在 c# 中是的,尤其是在控制器中。如果用户单击注销按钮,我想注销所有打开的页面。

标签: c# asp.net-mvc logout


【解决方案1】:

我认为您混淆了服务器端和客户端代码。您的 C# 代码无法访问用户的浏览器 - 因此您将无法通过这种方式注销其他选项卡。

如果您使用 cookie 来存储身份验证信息,您可以添加一个 javascript 函数来循环检查此 cookie,但我认为这不是一个好主意(性能方面、不必要的负载等)。检查控制器上的适当权限应该绰绰有余。

您还可以使用 html5 本地存储和事件,like so

【讨论】:

    猜你喜欢
    • 2012-12-29
    • 1970-01-01
    • 2019-05-12
    • 1970-01-01
    • 2017-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多