首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >asp.net会话技术

asp.net会话技术
EN

Stack Overflow用户
提问于 2013-03-29 11:55:08
回答 1查看 398关注 0票数 1

我对asp.net会话管理有很好的理解。

但我对此没什么疑问。

  1. 当创建会话id时。当客户端以用户名和密码登录到应用程序时。或者当客户端尝试访问default.aspx页面时。
  2. 服务器如何服务客户端会话请求。
  3. 我们可以访问js中的会话id吗?
  4. ASP.NET web表单和ASP.NET MVC在客户机服务器会话创建方面有什么不同吗?

任何链接/书,给我非常深入的想法,有关会议将对我有帮助。

提前谢谢!普拉尚特

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-29 12:01:50

我对asp.net会话管理有很好的理解。

我认为你在这里滥用了术语。ASP.NET Session是一回事,Forms Authentication是一个完全不同的东西。我想您在这里讨论的是表单身份验证。

1)何时创建会话id。当客户端以用户名和密码登录到应用程序时。或者当客户端尝试访问default.aspx页面时。

当有人调用FormsAuthentication.SetAuthCookie方法时,这通常是在用户名和密码凭据被LogOn操作验证之后发生的。

2)服务器如何服务客户端会话请求。

当调用FormsAuthentication.SetAuthCookie方法时,会向客户端发出一个表单身份验证cookie,并且在随后的每个请求中将该cookie发送给服务器。cookie包含用户名的加密值,允许服务器填充IPrincipal。

3)我们可以访问js中的会话id吗?

不,表单身份验证cookie是使用httponly标志发出的,这意味着客户端脚本无法访问它。

4) ASP.NET web表单与ASP.NET MVC在客户端服务器会话创建方面是否存在差异?

他们完全一样。实际上,没有像ASP.NET MVC client server session creation这样的概念。所有这些机制都来自于ASP.NET。

现在,假设您在问题中实际上谈到了ASP.NET会话。在这方面,我将尽力回答你们的问题:

1)何时创建会话id。当客户端以用户名和密码登录到应用程序时。或者当客户端尝试访问default.aspx页面时。

每当某些服务器端代码试图使用HttpContext.Session属性读取或写入会话时。

2)服务器如何服务客户端会话请求。

当某个服务器端脚本试图读取或写入HttpContext.Session对象时,会向客户端发出会话cookie。此cookie将在随后的每个请求中发送到服务器。cookie只是允许访问存储在服务器上的会话数据的id。默认情况下,会话数据存储在内存中。但是,您也可以配置ASP.NET来将其存储在程序之外或SQLServer中。有关各种会话状态模式的更多信息,请参阅MSDN

3)我们可以访问js中的会话id吗?

不,ASP.NET会话cookie是使用httponly标志发出的,这意味着客户端脚本无法访问它。

4) ASP.NET web表单与ASP.NET MVC在客户端服务器会话创建方面是否存在差异?

他们完全一样。实际上,没有像ASP.NET MVC client server session creation这样的概念。所有这些机制都来自于ASP.NET。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15702706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档