我不明白asp.net mvc如何维护用户状态。 我拿了一个非常简单的mvc4模板并登录谷歌,雅虎和其他注册客户端,没有登录改变我的网址,它总是保持相同像
http://localhost:180xx/
如何区分两个用户?
答案 0 :(得分:3)
如何区分两个用户?
它使用Forms Authentication
,它基本上将当前经过身份验证的用户存储在每个请求发送的cookie中。
表单身份验证的工作方式是,当您(或公共身份提供商,如果您使用OAuth)成功验证用户的凭据时,您的应用程序会向客户端浏览器发出表单身份验证cookie。此cookie包含加密的usermame。然后在每个请求上发送cookie,并且所谓的Forms Authentication HTTP模块(在所有请求之前运行)读取此cookie,对其进行解密并设置HttpContext.User
属性,您可以在代码中使用该属性来标识当前已验证的cookie用户:
public ActionResult SomeAction()
{
var user = this.User;
// you may use the user.Identity here
...
}