我有MVC 4应用程序,其应用程序池时不时停止。我在事件查看器Windows应用程序日志Exception information:
Exception type: HttpAntiForgeryException
Exception message: The anti-forgery cookie token and form field token do not match.
.....................
我的控制器操作具有如下所示的ValidateAntiForgeryToken设置
[HttpPost]
[ValidateAntiForgeryToken]
[OutputCache(Duration = 0)]
public ActionResult Login(LoginViewModel model, string returnUrl, bool loginbutton = true)
{
///
}
在我看来,我确实有
@using (Html.BeginForm("Login", "Account", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "form-horizontal", @id = "login-form" }))
{
@Html.AntiForgeryToken()
....................
}
我已查看此question并添加了机器密钥,但这也无济于事。任何想法为什么会发生这种情况?该网站正在使用SSL证书,但我认为这不会导致任何问题。
答案 0 :(得分:0)
通过查看调试诊断日志,我发现问题与使用无效用户名/处理程序而不是防伪的推文提要相关。这导致system.stackoverflowexception并导致应用程序池崩溃。