Asp.net mvc 如何在ASP.NET MVC中将防伪令牌传递给具有HttpDelete属性的操作方法?

Asp.net mvc 如何在ASP.NET MVC中将防伪令牌传递给具有HttpDelete属性的操作方法?,asp.net-mvc,asp.net-mvc-2,Asp.net Mvc,Asp.net Mvc 2,这可能吗 代码看起来像这样 [Transaction] [ValidateAntiForgeryToken] [HttpDelete] public ActionResult Delete(int id) { ...} 您可以将以下帮助器添加到表单中: <%= Html.HttpMethodOverride(HttpVerbs.Delete) %> 这将包括一个隐藏字段,该字段将指示框架调用适当的控制器操作。现在有两种可能性: 正常html表单提交:仅支持POST,因此将使用

这可能吗

代码看起来像这样

[Transaction]
[ValidateAntiForgeryToken]
[HttpDelete]
public ActionResult Delete(int id) { ...}

您可以将以下帮助器添加到表单中:

<%= Html.HttpMethodOverride(HttpVerbs.Delete) %>

这将包括一个隐藏字段,该字段将指示框架调用适当的控制器操作。现在有两种可能性:

  • 正常html表单提交:仅支持POST,因此将使用此字段,但由于隐藏字段,将调用适当的控制器操作
  • AJAX:您可以使用任何您想要的动词(包括DELETE)来序列化表单输入值并发送它们——这里没有问题

  • 浏览器是否可以执行HTTP删除操作?或者这是RESTAPI?我使用的是使用restful约定的ExtJS