在ASP.NET中,我对cookie在会话状态中的作用感到有些困惑。 什么是正常会话状态和无cookie会话状态之间的区别?
答案 0 :(得分:19)
正常会话状态涉及提供cookie。 Cookie包含会话标识符,网站使用该标识符将访问者与其各自的会话值进行匹配。
无Cookie会话状态使用相同的原则,但不使用cookie来传递会话标识符。通常,这是作为查询字符串的参数传递的。
e.g。
http://www.somewebsite.com/page.aspx?sid=jrkwojeqrojq3op349023231234r23rf2
答案 1 :(得分:4)
ASP.NET能够修改页面中找到的相对链接,并将会话ID嵌入到URL中,而不是将其存储在cookie中。
因此,只要用户遵循站点提供的链接路径,就可以在不使用cookie的情况下维护会话状态。但是,如果最终用户重写URL,则会话状态实例很可能会丢失。
进一步阅读:
答案 2 :(得分:3)
cookie less会话不使用cookie是用户的浏览器存储会话状态。相反,它会将会话存储在页面本身或URL中。请在此处阅读comparison。
答案 3 :(得分:1)
cookieless意味着sessionId被安排到每个请求的url中,而不是在浏览器上设置cookie。