什么是[HttpPost]和[ValidateAntiForgeryToken]

时间:2014-01-06 03:25:31

标签: c# asp.net-mvc asp.net-mvc-4

当我使用MVC 4时,我发现在某些函数的顶部有[HttpPost]和[ValidateAntiForgeryToken]。

    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult PictureUpload(PictureModel model)
    {
     ....
    }

他们是什么?这种表达式叫什么?如何使用它们????

2 个答案:

答案 0 :(得分:0)

这些项目属性。

HttpPostAttribute MSDN Link

Represents an attribute that is used to restrict an action method so that the method handles only HTTP POST requests.

ValidateAntiForgeryTokenAttribute MSDN Link

Represents an attribute that is used to prevent forgery of a request.

现在要使'ValidateAntiForgeryTokenAttribute'正常运行,您必须使用MVC助手在视图中提供AntiForgery令牌。

@Html.AntiForgeryToken()

答案 1 :(得分:-1)

这些称为 属性 。您可以在MSDN上找到详细说明:Attributes (C# and Visual Basic)

要查找与[HttpPost][ValidateAntiForgeryToken]相关联的属性类,您必须使用Attribute扩展属性名称,因此类名称为HttpPostAttributeValidateAntiForgeryTokenAttribute。它们都是System.Web.Mvc命名空间的一部分。

  

<强> System.Web.Mvc.HttpPostAttribute

     

表示用于限制操作方法的属性,以便该方法仅处理HTTP POST请求。

  

<强> System.Web.Mvc.ValidateAntiForgeryTokenAttribute

     

表示用于防止伪造请求的属性。