我有一个MVC 3视图,代码如下: -

@using (Html.BeginForm(MVC.Order.SearchResults(), FormMethod.Get))
{
    @Html.AntiForgeryToken()

    @Html.Button("btnSearch", "Search", HtmlButtonType.Submit, null, new { @class = "button primary icon search", alt = "Search the orders (up to 50 characters)" }
}

当我发布表单时,我看到__RequestVerificationToken =和查询字符串中的验证令牌的内容。

任何想法为什么会出现这种情况以及如何对其进行排序?

===============>>#1 票数:3

防伪令牌仅适用于POST请求。 如果要使用它们,则需要将表单使用的动词更改为POST而不是GET:

@using (Html.BeginForm(MVC.Order.SearchResults(), FormMethod.Post))
{
    @Html.AntiForgeryToken()

    @Html.Button("btnSearch", "Search", HtmlButtonType.Submit, null, new { @class = "button primary icon search", alt = "Search the orders (up to 50 characters)" }
}

===============>>#2 票数:0

有一种解决方法,您可以通过GET方法甚至在标头中传递防伪值。 更多细节在这里

  ask by gsuttie translate from so

未解决问题?本站智能推荐:

2回复

Mvc3 Antiforgery令牌多标签

我们在登录页面上的防伪令牌存在特定问题。 如果用户仅使用一个活动窗口登录,则一切正常,但是,如果用户在两个不同的窗口中打开登录页面并从窗口A登录(不会登录,则没有问题),然后从该窗口的窗口B返回登录。用户将收到“未提供必需的防伪令牌或该令牌无效”的信息。 有没有其他办法可以从视图/控制器
2回复

MVC3远程验证和AntiForgeryToken

阅读了有关XSS攻击的信息后,我已使用本文所述的ValidateAntiForgeryTokenWrapperAttribute将AntiForgeryToken应用于我的网站: http://weblogs.asp.net/dixin/archive/2010/05/22/anti-fo
11回复

对防伪令牌问题进行故障排除

我有一个表单帖子,始终给我一个防伪令牌错误。 这是我的表格: 这是我的操作方法: 这是web.config中的machineKey: 这是我得到的错误: 我已经读过,在HttpContext上更改用户将使令牌无效,但这不是在这里发生。 我的Join动作上的
2回复

MVC3 AntiForgeryToken打破了Ajax登录

ASP.NET MVC的AntiForgeryToken机制基于当前的HttpContext.User 。 当您调用Html.AntiForgeryToken()时,它使用该值来构造令牌。 基本上没关系(请参阅此处最后一段中的解释)但是当您通过Ajax调用登录时会出现问题。 在我的代码
1回复

AntiForgeryToken在ASP.Net MVC 4 RC中弃用

我刚刚安装了ASP.Net MVC 4 RC来取代ASP.Net MVC 4 beta。 尝试运行现有应用程序时,我收到一条错误消息,指出AntiForgeryToken已被弃用。 这是我的代码: ----更新--- ASP.Net MVC 4 RC使得Salt属性对于Vali
1回复

在一个页面中以两种不同的形式使用多个@ Html.AntiForgeryToken()是否可能/正确?

我一直面临着@Html.AntiForgeryToken()严重问题。 我有一个注册控制器,它有一个创建视图来创建/注册新成员。 出于这个原因,我在我的主提交表单中使用了@Html.AntiForgeryToken()而没有使用任何SALT。 现在我想验证用户名是否已存在于我的用户名文本框
1回复

ASP.NET MVC - ValidateAntiForgeryToken到期

在网页中,我们提供了用户可以点击进行身份验证的超链接(GET): 这将映射到以下返回视图的控制器方法: 此视图包含用户提供凭据的表单; 表单包含所需的AntiForgeryToken。 当用户提交表单时,将调用以下Controller方法: 这很好用,大部分时间.
3回复

MVC3 AntiForgeryToken问题

我正在尝试为我的MVC3应用程序实现AntiForgeryToken。 设置FormAuthentication cookie后,AntiForgeryToken出现问题。 这是一个简单的示例,它解释了我的问题。 我有以下操作方法的家庭控制器: 这是我的登录和关于视图:
1回复

ASP.NET MVC 3针对托管在一台本地服务器上的多门户应用程序的防伪保护

我有2个网站,实际上它们是相同的。 其目的在于其中一个用于互联网用户,第二个用于本地用户。 现在,它们托管在我的localhost计算机上的同一IIS服务器上。 当我打开这两个网站并尝试获取标有[ValidateAntiForgeryToken]的操作结果时,我有一个问题,在我的cooki
1回复

MVC3中的防伪cookie

我想实现此解决方案来处理Ajax请求中的伪造。 我知道还有其他解决方案,但这是我最喜欢的解决方案。 问题是我必须处理System.Web.Webpages 1.0,因此我无法在代码中使用AntiForgeryConfig.CookieName。 如何检索(以编程方式)由Mvc3中