用于 asp.net web api 的 PUT 和 DELETE 的 discountasp.net 问题

Posted

技术标签:

【中文标题】用于 asp.net web api 的 PUT 和 DELETE 的 discountasp.net 问题【英文标题】:discountasp.net issue with PUT and DELETE for asp.net web api 【发布时间】:2012-07-29 22:10:32 【问题描述】:

我有一个非常标准的 asp.net web api,设置了 get post put 和 delete。我在 discountasp.net 上托管。适用于本地主机上的所有动词,当我部署时,只有 get 和 post 有效。我已经阅读了关于这个主题的几乎所有问题,我确保 WebDav 被禁用,并确保我的处理程序映射接受正确的动词,我仍然得到 405 错误。

有人知道问题可能是什么吗?它是 mvc4 asp.net web api,几乎是开箱即用的,我在单个 cshtml 页面上使用 ajax 与所有动词进行交互。我的网络服务器是 iis7。

【问题讨论】:

使用config查找webdav停用。 是的问题,我发布了一个答案 【参考方案1】:

结果证明这是一个简单的 web.config 更改。不知道为什么很多演练让我进入 iis 并搞乱处理程序和所有这些好东西。我将它添加到 web.config 的模块部分,它现在就像一个魅力:

<system.webServer> 
<modules … > 
<remove name="WebDAVModule" /> 
…… 
</modules>

【讨论】:

以上是关于用于 asp.net web api 的 PUT 和 DELETE 的 discountasp.net 问题的主要内容,如果未能解决你的问题,请参考以下文章

如何从 ASP.NET MVC 到 ASP.NET Core Web API 的 PUT?

如何从 ASP.NET 核心 mvc 向 asp.net 核心中的 Web API 发出 PUT 请求?

ASP.NET Web API - 不允许 PUT 和 DELETE 动词 - IIS 8

asp.net mvc 和 web api 哪个更好 Http POST 或 PUT

ASP.NET Web API 知多少

使用具有多个来源的 PUT 和 DELETE 请求时如何解决 ASP.NET Web API CORS Preflight 问题?