【问题标题】:Session Timeout and New Session会话超时和新会话
【发布时间】:2015-10-10 10:55:12
【问题描述】:

如果在 ASP.NET 应用程序中发生超时并且用户已注销。在应用程序中输入 Web App URL 或打开页面会创建新会话还是更新旧会话?(浏览器显示相同的会话 ID,这让我有点困惑)有什么区别?同样,当用户关闭浏览器并在超时后重新打开时,是新会话还是旧会话的更新?

这是一个相当新手的问题,但有助于我理解 Sessions。请澄清。

【问题讨论】:

  • 你的意思是,当用户在超时后重新登录应用程序时会发生什么?
  • 你在使用 session.clear() 吗?如果是这样,那么它将显示相同的会话 ID。
  • 我正在使用会话。放弃一种结束会话的方法并且不确定asp.net如何结束会话......因此需要更多地了解这一点

标签: asp.net session


【解决方案1】:

您可以更好地了解here。您可以参考 Sessions Identifier 段落。

以及this 链接也有助于全面了解。

【讨论】:

    【解决方案2】:

    Session.ClearSession.Abandon 用于销毁用户会话(Click)。 Session ID 在 ASP.NET session ID cookie 中维护。所以你必须从响应本身中删除 cookie。

    HttpCookie myCookie = new HttpCookie("YourSessionId");
    myCookie.Expires = DateTime.Now.AddDays(-1d);
    Response.Cookies.Add(myCookie);
    

    为了更好地理解,请访问here

    希望对你有所帮助。

    【讨论】:

    • 因此,如果我在结束用户会话时添加上述代码以从响应中删除 sessionid cookie,那么每次用户以编程方式从我的站点注销并重新登录时,这将是一个新会话,对吗? asp.net 中的未构建会话超时以及用户关闭并重新打开浏览器时会发生同样的情况吗?
    • 试一试肯定对你有帮助。
    猜你喜欢
    • 1970-01-01
    • 2010-12-05
    • 1970-01-01
    • 2010-12-25
    • 2011-04-24
    相关资源
    最近更新 更多