相关疑难解决方法(0)

MVC ValidateAntiForgeryToken多标签问题

我们得到了"未提供所需的防伪标记或无效".错误,并进行了一些进一步的调查,我设法以最简单的形式重现问题 - 我要么做一些完全错误的事情,要么这是对防伪令牌系统的限制.

无论哪种方式,我都很感激一些建议!

清空MVC 2项目:一个视图页面,一个控制器

视图:

<%--Sign in form:--%>
<% using(Html.BeginForm("SignIn", "Home", FormMethod.Post)) {%>
    <%= Html.AntiForgeryToken()%>
    <input type="submit" value="Sign in" />
<%}%>
Run Code Online (Sandbox Code Playgroud)

控制器:

public ActionResult Index()
{
    ViewData["status"] = "Index";
    return View();
}

[ValidateAntiForgeryToken]
public ActionResult SignIn()
{
    ViewData["status"] = "Signed In!";
    FormsAuthentication.SetAuthCookie("username", false);
    return View("Index");
}
Run Code Online (Sandbox Code Playgroud)

[编辑:简化代码示例]

要重新创建例外,请打开两个未登录的选项卡 - 在第一个选项卡上登录,然后在第二个选项卡上登录.

当我猜测正确的行为是重定向到登录页面(共享原始登录选项卡的会话/身份验证)时,第二个选项卡将始终抛出防伪异常

任何意见,将不胜感激!

干杯,戴夫

asp.net asp.net-mvc antiforgerytoken asp.net-mvc-2

5
推荐指数
2
解决办法
4440
查看次数