我正在使用默认的ASP.NET MVC身份验证。当我在服务器上发布我的网站时,一切正常,但我在5分钟不活动后退出。为了解决这个问题,我在web.config文件中添加了一个机器密钥。之后自动注销的问题增加到大约1小时而不是5分钟,但有时(每20次1或2次)我收到此错误The anti-forgery cookie token and form field token do not match
。我该怎么做才能解决这个问题?
答案 0 :(得分:1)
基本上,问题是你的_RequestVerificationToken cookie与发送给控制器的值不匹配。
验证令牌默认生命周期一直持续到会话结束。您所描述的为延长会话生命周期所做的事情似乎并不是实现更长会话时间的标准方法。看看这里:session timeout
接下来要考虑的事项:IIS中网站的默认空闲时间是20分钟。您可以将该值设置为0以使其根本不进入空闲状态。但是,当您不向IIS发送新请求(在后台打开页面的eG)时,这可能只是一个问题。看看IIS Idle Timeout
希望这有帮助。