【问题标题】:MVC antiforgerytoken partial ViewMVC antiforgerytoken 部分视图
【发布时间】:2014-10-02 17:30:07
【问题描述】:

我有一个包含两个部分视图 A 和 B 的 MVC 页面。当我提交部分视图 B 时,只有第一次出现此错误。

防伪cookie令牌和表单字段令牌不匹配。

第一次后视图完美运行。我在代码页中添加了[ValidateAntiForgeryToken],并在部分视图中添加了@Html.AntiForgeryToken()

当我从页面中删除部分视图 A 时,B 工作正常,没有任何错误。

任何建议都会有帮助。

【问题讨论】:

标签: asp.net-mvc asp.net-mvc-5 partial-views antiforgerytoken


【解决方案1】:

当您拥有[ValidateAntiForgeryToken] 属性时,框架会执行以下操作

  1. 检查传入的请求是否有一个名为__RequestVerificationToken的cookie
  2. 检查传入请求是否有一个名为 __RequestVerificationTokenRequest.Form 条目
  3. 检查 cookie 和 Request.Form 值是否匹配

由于上述过程,一个页面只能有一个有效的 AntiForgery 令牌。

详情请查看http://blog.stevensanderson.com/2008/09/01/prevent-cross-site-request-forgery-csrf-using-aspnet-mvcs-antiforgerytoken-helper/

【讨论】:

    猜你喜欢
    • 2014-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多