一点背景:
我在 MVC3 中开发了一个 Web 应用程序,需要用户登录才能访问。
如果网页已经离开 5 分钟,一个计时器会触发,它会向服务器发出 jQuery ajax 调用,并返回一个包含登录用户电子邮件地址的部分视图和一个密码文本框,以便用户可以重新输入他们的详细信息,然后再继续使用该应用程序。
我使用表单身份验证,它存储在浏览器中的 cookie 设置为在浏览器会话关闭时过期(即它没有设置 Expires 属性)。
如果我将空闲计时器设置为 10 秒或 1 分钟,它工作正常。但是,如果我将其设置为 5 分钟,则在服务器上我看到以下内容:
HttpContext.Current.User.Identity.IsAuthenticated的值为 false HttpContext.Current.User.Identity.Name的值为“空”
所以我无法获取当前登录的用户详细信息。
有任何想法吗?