【发布时间】:2010-11-26 22:39:25
【问题描述】:
在配置文件中我有以下设置
sessionState mode="InProc" cookieless="false"
这是否表明 sessionid 是在 cookie 中存储的?如果是,那么它是如何被挑选并发送到服务器的,以及它是如何在回发中验证的。
如果在我的浏览器中禁用 cookie 会发生什么,会话(会话 ID 和会话变量)是否仍会创建?
哪里(默认路径)是默认为会话创建和存储的 cookie,我可以更改路径吗?
会话的 cookie 中存储了哪些格式和类型的数据?
如果我在会话中存储一个类对象,那么实际存储在 cookie 中的是什么?
另外,如果我使用身份验证模式作为带有 cookie 的表单,那么如果在浏览器中禁用 cookie 会发生什么?
【问题讨论】:
-
我知道如果我将 cookieless 设置为 true 则 sessionid 会附加到 url,但我只想知道 cookiesless 值是否设置为 false 并且客户端已禁用他机器上的 cookie应用程序会正常运行还是会脱离。我个人认为该应用程序不会像 Josh Stodola 所回答的那样工作。
-
看看我帖子底部的注释。一句话,如果您完全禁用 cookie 并且仍然期望会话存在,并且不启用无 cookie 会话,则应用程序将中断。例如,我实际上运行了一个测试,并且在我的一个应用程序上我只是不断地获得登录屏幕。
-
我创建了一个示例应用程序,其中会话属性 cookieless 设置为 false 并在浏览器中禁用了 cookie 并测试了它工作正常的应用程序。会话值存储在哪里?
-
检查this
-
stackoverflow.com/questions/12572134/… 这个帖子会回答你的问题。