Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用csrf令牌asp c#?_C#_Asp.net Mvc_Asp.net Mvc 3_Razor - Fatal编程技术网

如何使用csrf令牌asp c#?

如何使用csrf令牌asp c#?,c#,asp.net-mvc,asp.net-mvc-3,razor,C#,Asp.net Mvc,Asp.net Mvc 3,Razor,我从asp mvc 3开始,然后是c#和razor。我想使用带有安全性的表格发送请愿书 我想用剃刀把一些画成那样 <form action="/sass/" method="post"> @using (Html.BeginForm()) { @Html.AntiForgeryToken() <div class="form-group"> <label>Ingresa tu Nombre<

我从asp mvc 3开始,然后是c#和razor。我想使用带有安全性的表格发送请愿书

我想用剃刀把一些画成那样

<form action="/sass/" method="post">
     @using (Html.BeginForm()) {
        @Html.AntiForgeryToken()
        <div class="form-group">
            <label>Ingresa tu Nombre</label>
            <input class="form-control" name="nombre" />
        </div>
        <div class="form-group">
            <input type="submit" value="Enviar mi duda" class="btn btn-primary btn-sm" />
        </div>
     }

@使用(Html.BeginForm()){
@Html.AntiForgeryToken()
安格拉图诺姆布雷酒店
}
在C#中,我不知道如何验证csrf令牌是否有效。 我使用C#、asp mvc3和razor


请帮帮我

在操作方法中,您需要添加相应的属性[ValidateAntiForgeryToken],它会为您验证输入

在操作方法中,您需要添加相应的属性[ValidateAntiForgeryToken],它会为您验证输入

您的代码状态有问题。有两种嵌入表单:外部表单和由
Html.BeginForm
生成的表单。但是,验证令牌的方法是使用
[ValidateAntiForgeryToken]
装饰目标操作或控制器

因此,要么:

[ValidateAntiForgeryToken]
public ActionResult Index()
{
    return View();
}
或验证控制器中的所有方法:

[ValidateAntiForgeryToken]
public class MyController : Controller
{
}

您的代码状态有问题。有两种嵌入表单:外部表单和由
Html.BeginForm
生成的表单。但是,验证令牌的方法是使用
[ValidateAntiForgeryToken]
装饰目标操作或控制器

因此,要么:

[ValidateAntiForgeryToken]
public ActionResult Index()
{
    return View();
}
或验证控制器中的所有方法:

[ValidateAntiForgeryToken]
public class MyController : Controller
{
}

如何将我的表单与params放在一起,所以:。它使用Html.BeginForm()实现,正如我今天所了解到的,AntiForgeryToken和CsrfToken之间存在差异。Csrf比防暴药更具限制性。但是属性仍然是一条路要走。我应该如何把我的表单和params放在一起,所以:。它使用Html.BeginForm()实现,正如我今天所了解到的,AntiForgeryToken和CsrfToken之间存在差异。Csrf比防暴药更具限制性。如果这个答案对你有用,请接受它。如果这个答案对你有用,请接受它。