Asp.net mvc 4 iPhone上Chrome的表单身份验证问题

Asp.net mvc 4 iPhone上Chrome的表单身份验证问题,asp.net-mvc-4,forms-authentication,Asp.net Mvc 4,Forms Authentication,我有一个使用.NETFramework4.0的MVC4网站,并且已经部署了WindowsServer2003IIS,我在iPhone(尤其是Chrome浏览器)上的表单身份验证方面遇到了问题 场景 我在iPhone上打开Chrome应用程序 我转到我的网站并单击登录。我使用表单身份验证成功登录到我的网站 我让网站打开5分钟,什么也不做 我回到我的iPhone,点击我网站上的链接。我已经注销了 我尝试以与以前相同的方式登录。登录过程不起作用。没有错误,它只需要我的主页(这是成功登录时应该做的) 其

我有一个使用.NETFramework4.0的MVC4网站,并且已经部署了WindowsServer2003IIS,我在iPhone(尤其是Chrome浏览器)上的表单身份验证方面遇到了问题

场景

  • 我在iPhone上打开Chrome应用程序
  • 我转到我的网站并单击登录。我使用表单身份验证成功登录到我的网站
  • 我让网站打开5分钟,什么也不做
  • 我回到我的iPhone,点击我网站上的链接。我已经注销了
  • 我尝试以与以前相同的方式登录。登录过程不起作用。没有错误,它只需要我的主页(这是成功登录时应该做的)
  • 其他信息

  • 一般来说,iPhone上的Safari似乎没有遇到这个问题,除了。。。在Chrome出现问题后,Safari也出现了问题
  • 解决方案似乎是清除所有缓存/cookies,然后在20分钟左右重试
  • 我的超时时间实际上被设置为30分钟,所以Chrome在注销时不会遇到这个问题
  • 我研究了这篇文章()和其他文章,并尝试:-

    (a) web.config中的UseCookies设置

    (b) .browser配置文件

    (c) web.config中的MachineKey

  • 似乎没有什么不同,Chrome登录似乎只停留了一两分钟

    代码

    创建表单身份验证cookie的代码如下所示

    FormsAuthentication.Initialize()
    Dim fat As FormsAuthenticationTicket = New FormsAuthenticationTicket(1, UserID, DateTime.Now, DateTime.Now.AddMinutes(FormsAuthentication.Timeout.TotalMinutes), False, Roles, FormsAuthentication.FormsCookiePath)
    Response.Cookies.Add(New HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(fat)))
    

    有没有关于如何解决这个问题的建议?

    我想我的问题是——这是一个愚蠢的错误。我将UseCookies输入web.config中的SessionState键,而不是表单部分