6

目前我在我的 web.config 中使用它:

<sessionState mode="InProc" cookieless="UseCookies" timeout="60" />

我的问题是属性UseCookies和属性有什么区别?这让我很困惑。falsecookieless

4

1 回答 1

12

来自http://msdn.microsoft.com/en-us/library/ms972429.aspx(2000,用 .NET 1.0 编写)

无饼干。ASP.NET 的 cookieless 选项使用这个简单的布尔设置进行配置。

现在,来自: http: //msdn.microsoft.com/en-us/library/aa479315.aspx(2005,用 .NET 2.0 编写)

  1. “UseCookies”:顾名思义,永远不会使用无 cookie 功能。
  2. “UseUri”:将始终使用无 cookie 功能。
  3. “UseDeviceProfile”:根据发出请求的浏览器,可能会或可能不会使用无 cookie 功能。如果 ASP.NET 识别出浏览器不支持 cookie,则将使用无 cookie 功能。从技术上讲,两个布尔变量 Request.Browser.Cookies 和 Request.Browser.SupportsRedirectWithCookie 必须都为真,ASP.NET 才能假定浏览器支持 cookie。
  4. “AutoDetect”:在此设置中,ASP.NET 尝试检测浏览器是否支持 cookie。算法有点复杂,我会用伪代码来说明。(该算法可能会在未来的构建中发生变化)。

如我们所见,这种布尔模式“true”或“false”可能已被弃用

因此,如果“false”和“true”值现在仍然有效(对于 .NET 框架 2.0 及更高版本),我猜当您设置“false”时,它假定将使用 cookie 将会话标识符存储为UseCookies,而“true”将假定您不想将 cookie 存储为UseUri

于 2013-11-08T12:30:31.473 回答