从会话 Cookie 实例化 ASP.NET 会话

Posted

技术标签:

【中文标题】从会话 Cookie 实例化 ASP.NET 会话【英文标题】:Instantiate ASP.NET Session from Session Cookie 【发布时间】:2010-11-29 09:31:41 【问题描述】:

是否可以从会话 cookie 实例化会话?我有一个场景,其中(由于管道)我有可用的 cookie,但我的 ASP.NET Http Context 尚未构造 Context.Session 对象。我可以手动执行此操作,以某种方式引用 cookie 或其内容吗?

【问题讨论】:

【参考方案1】:

据我所知,由于页面生命周期,这是不可能的。在生命周期完成并启动 Session 之前,除了将所需的信息存储在应用程序变量中,或者使用 HttpCookies 编写单独的 cookie 之外,您无能为力。

如果我需要在 Session 初始化之前做一些事情,我通常会使用后者。

我假设您需要获取存储在 Session 中或需要 Session Id 的信息

【讨论】:

【参考方案2】:

不,我不这么认为,因为它发生在 SessionStateModule 内部,即使您尝试创建,也无法访问存储的实际变量。但是有 Session_OnStart 事件,您可以在其中执行 sessoin 访问代码。

【讨论】:

以上是关于从会话 Cookie 实例化 ASP.NET 会话的主要内容,如果未能解决你的问题,请参考以下文章

Asp.Net:关闭并重新打开浏览器实例后保留旧的浏览器会话

ASP.NET:为无 cookie 会话实现 ISessionIDManager?

asp.net cookie、身份验证和会话超时

ASP.NET 身份会话 cookie 的安全性如何?

如何同步表单身份验证 cookie 和 Asp.Net 会话的生命周期?

ASP.Net Core 2.1 API JWT 无 cookie 会话?