从cookie或请求读取会话ID有什么区别?

时间:2013-08-22 18:37:46

标签: asp.net-mvc-4

cookieless="false"中以web.config模式使用会话时,它会将会话ID存储在Cookie值中(我的意思是aspnet_sessionId)。我想知道,如果会话ID发生任何变化,这个cookie的值会自动更新吗?

通过这两个语句读取用户会话ID之间的区别是什么:

System.Web.HttpContext.Current.Session.SessionID  

VS

Request.Cookies["Aspnet_sessionId"].Value  

1 个答案:

答案 0 :(得分:0)

System.Web.HttpContext.Current.Session.SessionID  

的“捷径”
Request.Cookies["Aspnet_sessionId"].Value 

如你所说,不能保证将SessionID存储在cookie中。根据应用程序的配置和客户端的首选项,SessionID也可以是GET参数。

因此,您应该使用Session.SessionID确保始终正确检索它。