0

我不明白 asp.net mvc 如何维护用户状态。我拿了一个非常简单的 mvc4 模板并用 google、yahoo 和其他注册客户端登录,没有登录改变了我的 url,它总是保持不变就像

 http://localhost:180xx/

如何区分两个用户?

4

1 回答 1

3

如何区分两个用户?

它使用Forms Authentication它基本上将当前经过身份验证的用户存储在每个请求上发送的 cookie 中。

表单身份验证的工作方式是,当您(或公共身份提供者,如果您使用 OAuth)成功验证用户的凭据时,您的应用程序会向客户端浏览器发出表单身份验证 cookie。此 cookie 包含加密的用户名。然后在每个请求上发送 cookie,所谓的 Forms Authentication HTTP 模块(在所有请求之前运行)读取此 cookie,对其进行解密并设置HttpContext.User您可以在代码中使用的属性来识别当前经过身份验证的用户:

public ActionResult SomeAction()
{
    var user = this.User;
    // you may use the user.Identity here
    ...
}
于 2013-08-02T06:23:30.037 回答