【问题标题】:Concurrent Session in Angular 8 and .Net core APIAngular 8 和 .Net 核心 API 中的并发会话
【发布时间】:2020-12-01 19:31:16
【问题描述】:

我需要在浏览器 A 上显示弹出窗口(您在浏览器 B 上登录并在 5 秒内在浏览器 A 中注销)当用户尝试在浏览器 B 上登录时,他应该得到弹出窗口(您在浏览器 A 上登录并且在 5 秒内登录浏览器 B )并使用 IP 地址等所有详细信息

【问题讨论】:

  • 你有没有尝试过?

标签: .net angular .net-core


【解决方案1】:

您不能为此使用会话存储,因为两个浏览器将有不同的会话。

但是,您可以将详细信息存储在数据库中。

登录时,存储此身份的有关 IP 地址、浏览器字符串等的详细信息。加上“登录”日期和“最后一次看到”日期,您会保持更新。还有一个(最初为空的)“注销”日期。

登录后,还要检查该身份是否已被标记为“已登录”,方法是检查任何以前存储的详细信息。您需要决定何时将某人“注销” - 例如,当该用户在过去 20 分钟内未出现时。请记住,并非每个人都明确退出。 现在您可以显示该用户已在其他地方登录的消息。

对于每个请求,您都必须更新“最后一次看到”日期。您还需要检查“注销”日期。如果它有值,您可以显示消息,说明当前会话已被其他浏览器接管(当然,在此处注销)。

【讨论】:

    猜你喜欢
    • 2021-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多