8

对于这个看似简单的问题,我似乎找不到答案。

使用第一个或后一个有什么区别?为什么我要使用第一个?

在 MSDNAA 上,我发现有关 Formsauthentication.setCookie() 的以下内容:

为提供的用户名创建一个身份验证票证,并将其添加到响应的 cookie 集合中,如果您使用的是无 cookie 身份验证,则将其添加到 URL。

关于会话:

ASP.NET 会话状态使您能够在用户浏览构成 Web 应用程序的不同 ASP.NET 页面时为用户存储和检索值。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...
} 
4

1 回答 1

1

看来我已经在 asp.net 网站上找到了答案:

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

于 2013-01-09T06:56:44.613 回答