Formsauthentication.SetAuthCookie和Session之间的差异用法

时间:2013-01-04 12:12:59

标签: cookies forms-authentication session-state

我似乎无法找到这个看似简单问题的答案。

使用第一个或更晚的有什么区别?我为什么要使用第一个?

在MSDNAA上,我找到以下关于Formsauthentication.setCookie()的信息:

  

为提供的用户名创建身份验证票证并添加   它是响应的cookie集合,如果你的话,则是URL   正在使用无cookie验证。

关于会议:

  

ASP.NET会话状态使您可以存储和检索a的值   用户在用户导航组成的不同ASP.NET页面时   Web应用程序。 HTTP是一种无状态协议,意味着您的Web   服务器将页面的每个HTTP请求视为独立请求;   默认情况下,服务器不保留所使用的变量值   在以前的请求。因此,构建Web应用程序   需要维护一些交叉请求状态信息(应用程序   实现购物车,数据滚动等)可以是一个   挑战。 ASP.NET会话状态标识从中接收的请求   相同的浏览器在一段有限的时间内作为会话,和   提供在持续时间内持久保存变量值的功能   该会议。

当我使用会话cookie检查用户是否正确登录时,我特别感兴趣的是为什么我会使用formsauthentication.SetAuthCookie。例如:

if(Session["LoggedIn"] != null) {
    ...Do something here that only logged in users are allowed to do...
} 

1 个答案:

答案 0 :(得分:1)

似乎我在asp.net网站上找到了答案:

http://forums.asp.net/t/1587046.aspx/1#4012585