3
当我们有多个可能的表单发布到同一cshtml页面上的控制器时, Antiforgery验证不起作用。我们通过MVC3码时,我们发现问题是在这部分代码:如何在同一个MVC3页面上使用AntiForgery验证的多个Ajax表单?
if (!String.Equals(cookieToken.Value, formToken.Value, StringComparison.Ordinal)) {
// error: form token does not match cookie token
throw CreateValidationException();
}
,我们有CSHTML是这样的:
@using (@Ajax.BeginForm()) {
@Html.AntiForgeryToken()
<input type="submit" class="buttonBlue" value="form1" />
}
@using (@Ajax.BeginForm()) {
@Html.AntiForgeryToken()
<input type="submit" class="buttonBlue" value="form2" />
}
你能帮我解决这个问题问题?我们发现,移除其中一个防伪令牌之后,似乎按预期工作。
我们尝试设置防伪的机器密钥,但它也没有工作。
问候。
感谢这个伟大的工程! –