在WebApi中使用Put或Delete方法时,我有什么选择可以避免405方法不允许的错误



在Web API中使用Put或Delete方法时,我有什么替代方法可以避免405方法不允许的错误?

我知道有很多解决方案特别提到从IIS中删除WebDAV,或从Web.config或其他类似选项中禁用它例如:"405方法不允许";在IIS7.5中;PUT";方法和ASP.NET Web API-PUT&不允许删除谓词-IIS 8

但我遇到过很多情况,这些要么是不可行的解决方案,要么就是根本不起作用。

一种替代方法是使用Post而不是Put或Delete方法,您可以通过在函数中添加一些装饰符来实现这一点:

例如:

[HttpPost]
[Route("api/Users/Update")]
[ResponseType(typeof(void))]
public IHttpActionResult PutUser(User user)
{...

[HttpPost]装饰器只是指示该函数是Post。并且路由将覆盖WebApiConfig.cs中的默认路由。

我希望这能让未来的某个人更轻松。

最新更新