【问题标题】:How to use MVC AntiForgeryToken with partial views如何在部分视图中使用 MVC AntiForgeryToken
【发布时间】:2014-04-18 07:38:58
【问题描述】:

我的问题更多是由处理部分视图时的正确方法驱动的。每个局部视图或整个容器是否有一个标记?

目前我们的表单包含 5 个部分视图的 div。用户正在回答一系列认证问题,并根据回答显示 1 个或多个 div/部分视图。每个部分视图都被接受/拒绝(按钮选择)并提交整个表单(按钮)。目前,每个部分视图在控制器中都有自己的 AntiForgeryToken 和相应的令牌验证(以您指示的方式)。

使用这种方法,我们会定期看到 System.Web.Mvc.HttpAntiForgeryException

如果我的表单/视图将根据用户响应显示 1 个或多个部分视图。我需要在哪里放置 AntiForgeryToken?在父视图中?在部分意见?两者都有?

我的理论是,当表示多个局部视图时,会发生令牌不匹配并报告错误。我的想法是将令牌移动到主/父视图。

我在正确的轨道上吗?有人必须处理类似的事情吗?

【问题讨论】:

标签: c# asp.net-mvc razor antiforgerytoken


【解决方案1】:

由于您在单个表单中有多个部分视图,您需要单独在父页面(表单)中添加 @Html.AntiForgeryToken()。

你不需要在每个部分都放置相同的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-05
    • 2012-09-07
    • 2018-05-27
    • 2018-10-20
    • 2013-09-20
    相关资源
    最近更新 更多